Model Outputs - tlumip/CALM GitHub Wiki

Network Results

The key outputs of primary interest will be the two version files under outputs\networks; one version file containing the daily results and one containing the pm peak results. Some additional important notes:

  • These files contain the link volumes for the respective assignment period (daily or PM peak) in the attribute: “VolVehPrT(AP)”, along with the path data (results) for that assignment.
  • The contain the appropriate skims (peak and daily) for the version file. These include auto and transit. Bike and Walk (for Walk purpose) are not present as they are not assigned. These can be found in the file outputs/omx/bike_skim.omx and walk_skim.omx as matrices. The distance skim is not the shortest path distance, but the distance of the peak or daily auto path.
  • Contains Transit and auto assignment path files (used in making flow bundles (select links).

Skims and Demand Matrices

Skims and demand matrices in OMX format are located in /outputs/matrices. Demand matrices are named demand_daily, which includes daily trips for auto and transit, and demand_peak, which includes peak auto trips. When the peak and off-peak transit assignment setting is enabled, demand_peak will include peak transit demand.

Skims used by JEMnR and the University Model

Skims are exported from Visum according to the skim procedures in /visum/procedures. Auto and Transit skims are saved to one OMX file per time period, while bike and walk distance skims are saved to separate OMX files. Each skim matrix is listed in the table below along with it's OMX file name, Visum matrix name (also used in OMX), JEMnR variable name (also the name of the matrix RData file in /inputs/RData), Emme matrix number (used to save matrices for the University model in /unimodel/emmemat).

OMX matrices from Visum are identified by their name, which includes the skim description and mode name. If the mode name is changed or a different skim is to be used, the mapping of Visum skims to JEMnR matrices can be changed in the Settings.csv file.

OMX File Visum/OMX Matrix Name JEMnR Matrix Emme Matrix Number Description
daily_skim.omx tCur a autoTimeOffPeakdriveAlone, autoTimeOffPeakdrivePass, autoTimeOffPeakpass mf19 Off-peak congested Auto travel time
daily_skim.omx Trip distance a autoDist mf21 Auto distance skim
daily_skim.omx In-vehicle time PuT ivTimeoffPeakbusWalk mf9 Off-peak In-vehicle time skim for Bus walk mode
daily_skim.omx Origin wait time PuT waitTimeAoffPeakbusWalk mf11 Off-peak First wait time skim for Bus walk mode
daily_skim.omx Transfer wait time PuT waitTimeBoffPeakbusWalk mf12 Off-peak Second (transfer) wait time skim for Bus walk mode
daily_skim.omx Walk time PuT walkTimeoffPeakbusWalk mf10 Off-peak Walk time skim for Bus walk mode
daily_skim.omx Number of transfers PuT boardingsoffPeakbusWalk mf14 Off-peak Transfers skim for Bus walk mode
daily_skim.omx Journey distance PuT tranDist mf24 Transit distance skim
peak_skim.omx tCur a autoTimepeakdriveAlone, autoTimepeakdrivePass, autoTimepeakpass mf20 Peak congested Auto travel time
peak_skim.omx In-vehicle time PuT ivTimepeakbusWalk mf9 Peak In-vehicle time skim for Bus walk mode
peak_skim.omx Walk time PuT walkTimepeakbusWalk mf10 Peak Walk time skim for Bus walk mode
peak_skim.omx Origin wait time PuT waitTimeApeakbusWalk mf11 Peak First wait time skim for Bus walk mode
peak_skim.omx Transfer wait time PuT waitTimeBpeakbusWalk mf12 Peak Second (transfer) wait time skim for Bus walk mode
peak_skim.omx Number of transfers PuT boardingspeakbusWalk mf14 Peak Transfers skim for Bus walk mode
bike_skim.omx Trip distance Bike bikeDist mf23 Bike distance skim
walk_skim.omx Trip distance Walk walkDist mf22 Walk distance skim

Because the peak and off-peak Emme matrix numbers are the same for both transit time period skims, the off-peak (daily) skims will overwrite the peak skims for the University model.

Derived Skims

Skims calculated from other skims are listed by their JEMnR variable name (also the name of the matrix RData file in /inputs/RData, unless noted).

JEMnR Matrix Formula Description
lnAutoDist log(autoDist) natural log of auto distance
lnTranDist log(tranDist) natural log of transit distance
lnWalkDist log(walkDist) natural log of walk distance
lnBikeDist log(bikeDist) natural log of bike distance
walkTimewalk walkDist / walkSpeed * 60 Walk time using walkSpeed setting, up to maxWalkDistance. NA if longer than max. walk distance.
bikeTime bikeDist / bikeSpeed * 60 Bike time using bikeSpeed setting, up to maxBikeDistance. NA if longer than max. bike distance.

University Model Outputs

The University model outputs in CSV format can be found in /unimodel/outputs. Outputs for each iteration are saved in their respective folders (iter0, iter1, etc.) and the final iteration outputs, iter1 in this case, are copied to the top level of the outputs directory.

File Description Data Dictionary
householdsOut.csv stores the University model's output household table Link
personsOut.csv describes each person in each synthetic household Link
workersByOccupationAndTAZ.csv lists the total employment by occupation for each TAZ Link
trips.csv lists each trip generated by the model Link
tours.csv lists all tours generated by the model Link
parkingDemand.csv total demand (vehicle trips) for each zone, for each time period and market segment Link
unmetParkingDemand.csv Unmet demand by market segment and time period Link

Reporting script

The JEMnR scripts generate an HTML report (/modelReport.html) from the JEMnR demand data, including distribution of workers and autos by household, trips by purpose, trip length distributions, travel time distributions, total vehicle and transit trips, person-miles traveled, and trips by mode. All data is compared to the referenceRun directory specified in the Settings file. The report excludes trips generated by the University Model.

Calculating Overall Model Mode Share

To calculate total model mode share with trips from the University model, the number of trips using each mode in JEMnR and the University model should be added together. An R script is available to help make this calculation.

Loaded Visum Networks

Visum output networks are located in /outputs/networks and include auto and transit assignments by time of day, depending on settings:

  • Assignment_daily.ver contains Auto and Transit assignment results for the full day ("off-peak" transit if runPeakOffPeakTransitAssignment setting is enabled)
  • Assignment_peak.ver always contains peak Auto assignment results for the PM Peak period. It will also contain peak Transit assignment results if runPeakOffPeakTransitAssignment setting is enabled.

The output version files contain these commonly used outputs:

  • Demand and Skim matrices
  • Flow bundles for auto and transit assignments
  • Links: Auto volumes, transit volumes by link, link travel time and delay, VMT and VHT
  • Line Routes: transit boardings by line
  • Line Route Items: transit boardings by stop

Unlike SOABM, there are no calculations or re-naming of attributes needed in the output files following assignment. Daily and peak assignments are performed independently and all contents of the version file after assignment are saved to their respective output file name.

Note about RData Files

R version 3.4.1 is an older version than what may be installed for general use. It is important to note that this version of R reads and writes an older format of RData files. R 3.5 and newer versions can read this older format, but do not write in this format by default. Therefore, modifying RData files in a newer version of R can cause errors if these are meant to be read in R 3.4.1.

A workaround, if necessary, is to point RStudio to R version 3.4.1 by clicking on Tools > Global Options in the top toolbar. Then click Change next to the R Version setting. In the dialog box, click the radio button for Choose a specific version of R, then click Browse and look for the dependencies folder. Select the R 3.4.1 folder.

Output File Data Dictionaries

University Households Out table

Attribute Definition
hh_id Household ID
autos Number of autos (in the case of the university model, this is the number of autos from the synthetic population, not the output from the auto ownership model)
workers Number of workers in the household (from popsyn)
income Household income (in $2011, from popsyn)
adults Adults in household (from popsyn)
family 1 if family household, else 0 (from popsyn)
taz Household residence TAZ (from popsyn)
buildingType 0 - Single Family
1 - Townhouse
2 - Apartment
3 - Mobile home
4 - Group quarters
debugChoiceModels 1 if household was selected for debugging, else 0
seed Random number seed for household choice models
expansionFactor Household expansion factor

University Persons Out table

Attribute Definition
hh_id Household ID
person_id Person ID
female 1 if female, else 0
age Age in years
occupation 0 - Management of business, science, and the arts
1 - White collar
2 - Blue collar
3 - Sales and office
4 - Natural resource extraction, construction, and maintenance
5 - Production, transportation, material moving
6 - Military
workStatus 0 - Non-worker
1 - Full-time worker
2 - Part-time worker
studentStatus 0 - Non-student
1 - Pre-kindergarten student
2 - K-12 student
3 - College student
majorUniversityStudent 1 if major university student, else 0
majorUniversityWorker 1 if major university worker, else 0
personType 0 - Full-time worker
1 - Part-time worker
2 - University student
3 - Non-working adult
4 - Retired adult
5 - Driving age student
6 - Pre-driving age student
7 - Pre-school child
workTaz Work TAZ if worker
schoolTaz School TAZ if student
autoAvailable Chosen auto availability; 1 if auto available, else 0
parksFreeAtWork Chosen free parking at work; 1 if parks free, else 0
numberOfTours Number of tours generated by person
seed Random number seed for person choice models
expansionFactor Expansion factor

University Workers by Occupation table

Attribute Definition
TAZ TAZ ID
Occupation_0 Zonal Employment in Management of business, science, and the arts
Occupation_1 Zonal Employment in White collar
Occupation_2 Zonal Employment in Blue collar
Occupation_3 Zonal Employment in Sales and office
Occupation_4 Zonal Employment in Natural resource extraction, construction, and maintenance
Occupation_5 Zonal Employment in Production, transportation, material moving
Occupation_6 Zonal Employment in Military

University Trips table

Attribute Definition
hh_id Household ID
person_id Person ID
tour_id Tour ID
trip_id Trip ID
expansionFactor Expansion factor
originTaz Origin zone ID
destinationTaz Destination zone ID
tripMode 1 - Drive-alone, general purpose
2 - Drive-alone, toll-eligible
3 - Shared ride 2, general purpose
4 - Shared ride 2, toll-eligible
5 - Shared ride 3+, general purpose
6 - Shared ride 3+, toll-eligible
7 - Walk
8 - Bike
9 - Walk-local transit
10 - Walk-premium transit
11 - Park-and-ride transit
12 - Kiss-and-ride transit
originPurpose -1 - Home
0 - Work
1 - University
2 - Maintenance
3 - Discretionary
destinationPurpose see Purpose codes above
period 0 - 3:00 AM to 3:30 AM
1 - 3:30 AM to 4:00 AM
2 - 4:00 AM to 4:30 AM
in 30 min increments
45 - 1:30 AM to 2:00 AM
46 - 2:00 AM to 2:30 AM
47 - 2:30 AM to 3:00 AM
inbound 1 if trip occurs on inbound tour direction, else 0
firstTrip 1 if first trip on tour, else 0
lastTrip 1 if last trip on tour, else 0
originIsTourDestination 1 if trip origin is tour primary destination, else 0
destinationIsTourDestination 1 if trip destination is tour primary destination, else 0
parkingLotTrip

University Tours table

Attribute Definition
hh_id Household ID
person_id Person ID
tour_id Tour ID
purpose 0 - Work
1 - University
2 - Maintenance
3 - Discretionary
departTime 0 - 3:00 AM to 3:30 AM
1 - 3:30 AM to 4:00 AM
2 - 4:00 AM to 4:30 AM
in 30 min increments
45 - 1:30 AM to 2:00 AM
46 - 2:00 AM to 2:30 AM
47 - 2:30 AM to 3:00 AM
arriveTime same as above
originTaz Origin TAZ
destinationTaz Primary destination TAZ
parkingTaz Parking Lot TAZ
parkingSpaceType 0 - Faculty/Staff (or N/A)
1 - Student
2 - Visitor
tourMode 1 - Drive-alone, general purpose
2 - Drive-alone, toll-eligible
3 - Shared ride 2, general purpose
4 - Shared ride 2, toll-eligible
5 - Shared ride 3+, general purpose
6 - Shared ride 3+, toll-eligible
7 - Walk
8 - Bike
9 - Walk-local transit
10 - Walk-premium transit
11 - Park-and-ride transit
12 - Kiss-and-ride transit
seed Random number seed for tour and stop choice models
expansionFactor Expansion factor
numberOutboundStops Number of stops on outbound tour direction
numberInboundStops Number of stops on inbound tour direction
numberTrips Number of trips on tour
outstop_n_inbound Outbound stop n inbound code (always 0)
outstop_n_mode Mode of trip to outbound stop n, see Mode codes above
outstop_n_period Departure time period of outbound stop n, see Time Period codes above
outstop_n_taz Outbound stop n zone ID
outstop_n_purpose Outbound stop n purpose, see Purpose codes above
outstop_n_seed Outbound stop n random number seed
instop_n_inbound Inbound stop n inbound code (always 1)
instop_n_mode Mode of trip to inbound stop n, see Mode codes above
instop_n_period Departure time period of inbound stop n, see Time Period codes above
instop_n_taz Inbound stop n zone ID
instop_n_purpose Inbound stop n purpose, see Purpose codes above
instop_n_seed Inbound stop n random number seed

University Parking Demand table

Attribute Definition
TAZ Parking Lot Zone
spaceType 0 - Faculty/Staff
1 - Student
2 - Visitor
facultyStaffDemand_n Demand for Faculty/Staff spaces for Time Period n, where n is between 1 and 48
studentDemand_n Demand for Student spaces for Time Period n
visitorDemand_n Demand for Visitor spaces for Time Period n

University Unmet Parking Demand table

Attribute Definition
parkingSegment 0 - Faculty/Staff
1 - Student
2 - Visitor
period_n Unmet demand for this segment at Time Period n
⚠️ **GitHub.com Fallback** ⚠️