diff --git a/core/projects/mtc/release/mtc.jar b/core/projects/mtc/release/mtc.jar index a184b4bc5..38e6c745d 100644 Binary files a/core/projects/mtc/release/mtc.jar and b/core/projects/mtc/release/mtc.jar differ diff --git a/core/projects/mtc/src/java/com/pb/mtc/ctramp/MtcModelStructure.java b/core/projects/mtc/src/java/com/pb/mtc/ctramp/MtcModelStructure.java index d6e134814..548d7e20a 100644 --- a/core/projects/mtc/src/java/com/pb/mtc/ctramp/MtcModelStructure.java +++ b/core/projects/mtc/src/java/com/pb/mtc/ctramp/MtcModelStructure.java @@ -133,23 +133,23 @@ public class MtcModelStructure extends ModelStructure { // TODO: set these values from project specific code. public static final int ESCORT_INDEX = 3; - public static final int[] SOV_ALTS = { 1, 2 }; - public static final int[] HOV_ALTS = { 3, 4, 5, 6 }; - public static final int[] WALK_ALTS = { 7 }; - public static final int[] BIKE_ALTS = { 8 }; - public static final int[] NON_MOTORIZED_ALTS = { 7, 8 }; - public static final int[] TRANSIT_ALTS = { 9, 10, 11, 12, 13, 14, 15, 16, 17, 18 }; - public static final int[] WALK_LOCAL_ALTS = { 9 }; - public static final int[] WALK_PREMIUM_ALTS = { 10, 11, 12, 13 }; - public static final int[] DRIVE_TRANSIT_ALTS = { 14, 15, 16, 17, 18 }; + public static final int[] SOV_ALTS = { 1 }; + public static final int[] HOV_ALTS = { 2, 3 }; + public static final int[] WALK_ALTS = { 4 }; + public static final int[] BIKE_ALTS = { 5 }; + public static final int[] NON_MOTORIZED_ALTS = { 4, 5 }; + public static final int[] TRANSIT_ALTS = { 6, 7, 8 }; + public static final int[] WALK_LOCAL_ALTS = { 6 }; + public static final int[] WALK_PREMIUM_ALTS = { 6 }; + public static final int[] DRIVE_TRANSIT_ALTS = { 7, 8 }; public static final int[] SCHOOL_BUS_ALTS = {}; - public static final int[] RIDE_HAIL_ALTS = {19, 20, 21}; - public static final int MAXIMUM_TOUR_MODE_ALT_INDEX = 21; + public static final int[] RIDE_HAIL_ALTS = { 9 }; + public static final int MAXIMUM_TOUR_MODE_ALT_INDEX = 9; public static final int NUM_INCOME_CATEGORIES = 4; - public static final int[] TRIP_SOV_ALTS = { 1, 2 }; - public static final int[] TRIP_HOV_ALTS = { 3, 4, 5, 6 }; + public static final int[] TRIP_SOV_ALTS = { 1 }; + public static final int[] TRIP_HOV_ALTS = { 2, 3 }; public static final String[] JTF_ALTERNATIVE_LABELS = { "0_tours", "1_Shop", "1_Main", "1_Eat", "1_Visit", "1_Disc", "2_SS", "2_SM", "2_SE", "2_SV", "2_SD", "2_MM", "2_ME", "2_MV", "2_MD", "2_EE", "2_EV", "2_ED", "2_VV", "2_VD", "2_DD" }; diff --git a/model-files/model/ModeChoice-for-script.xlsx b/model-files/model/ModeChoice-for-script.xlsx new file mode 100644 index 000000000..5ee7a8149 Binary files /dev/null and b/model-files/model/ModeChoice-for-script.xlsx differ diff --git a/model-files/model/ModeChoice.xls b/model-files/model/ModeChoice.xls index bab41a4b8..7f3f79bda 100644 Binary files a/model-files/model/ModeChoice.xls and b/model-files/model/ModeChoice.xls differ diff --git a/model-files/model/TripModeChoice-for-script.xlsx b/model-files/model/TripModeChoice-for-script.xlsx new file mode 100644 index 000000000..133fb81af Binary files /dev/null and b/model-files/model/TripModeChoice-for-script.xlsx differ diff --git a/model-files/model/TripModeChoice.xls b/model-files/model/TripModeChoice.xls index f465a3382..b8ac018fd 100644 Binary files a/model-files/model/TripModeChoice.xls and b/model-files/model/TripModeChoice.xls differ diff --git a/model-files/runtime/mtc.jar b/model-files/runtime/mtc.jar index a184b4bc5..38e6c745d 100644 Binary files a/model-files/runtime/mtc.jar and b/model-files/runtime/mtc.jar differ diff --git a/utilities/make-mode-choice/find-uec-differences.Rmd b/utilities/make-mode-choice/find-uec-differences.Rmd new file mode 100644 index 000000000..0c9b4f5d1 --- /dev/null +++ b/utilities/make-mode-choice/find-uec-differences.Rmd @@ -0,0 +1,153 @@ +--- +title: "Find UEC Differences" +output: html_notebook +--- + +# Overhead +```{r overhead, include = FALSE} +packages_vector <- c("tidyverse", + "readxl") + +need_to_install <- packages_vector[!(packages_vector %in% installed.packages()[,"Package"])] + +if (length(need_to_install)) install.packages(need_to_install) + +for (package in packages_vector) { + library(package, character.only = TRUE) +} + +``` + +# Remote I/O +```{r remote-io} +uec_dir <- "../../model-files/model/" + +uec_filename <- paste0(uec_dir, "ModeChoice-for-script.xlsx") + +output_file_name <- paste0("uec-differences.csv") +``` + +# Parameters +```{r parameters} + +``` + + +# Data Reads +```{r read} +excel_df <- tibble() +sheets <- c("Work", + "Shopping", + "Work-deprecated", + "University-deprecated", + "School-deprecated", + "Escort-deprecated", + "Shopping-deprecated", + "EatOut-deprecated", + "OthMaint-deprecated", + "Social-deprecated", + "OthDiscr-deprecated", + "WorkBased-deprecated") + +for (sheet in sheets) { + + number_alts <- if_else(str_detect(sheet, "deprecated"), 21L, 9L) + skip_lines <- if_else(str_detect(sheet, "deprecated"), 10L, 8L) + + df <- read_excel(uec_filename, + sheet = sheet, + skip = skip_lines, + col_names = c("row_number", "token", "description", "filter", "formula", "index", sprintf("Alt%0d", seq(1,number_alts)))) %>% + mutate(sheet_name = sheet) + + excel_df <- bind_rows(excel_df, df) + +} + +remove(sheets, df, number_alts, skip_lines) +``` + +# Methods +```{r methods} +make_uec <- function(input_df, template_name, subject_name, start_with_name) { + + input_df <- excel_df + template_name <- "Shopping-deprecated" + subject_name <- "WorkBased-deprecated" + start_with_name <- "Shopping" + + join_ref_df <- filter(input_df, sheet_name == template_name) %>% + select(ref_row = row_number, token, description, filter, formula) + + join_df <- filter(input_df, sheet_name == subject_name) %>% + select(subject_row = row_number, token, description, filter, formula) + + working_df <- left_join(join_df, join_ref_df, by = c("token", "filter", "description", "formula")) %>% + mutate(matched = !is.na(ref_row)) + + different_df <- working_df %>% + filter(!matched) + + constants_df <- different_df %>% + select(subject_row, token, filter, description, update_formula = formula) %>% + left_join(., join_ref_df, by = c("token", "filter", "description")) %>% + select(token, description, filter, formula, update_formula) + + out_df <- filter(excel_df, sheet_name == start_with_name) %>% + select(row_number, token, description, filter, formula, index) %>% + left_join(., constants_df, by = c("token", "filter", "description", "formula")) %>% + mutate(formula = if_else(is.na(update_formula), formula, update_formula)) %>% + select(-update_formula) %>% + replace(is.na(.), "") + + return(list("differences" = different_df, "uec" = out_df)) + +} + +``` + +# Reductions +```{r reductions} +univ_list <- make_uec(excel_df, "Work-deprecated", "University-deprecated", "Work") +check_univ_df <- univ_list$differences + +school_list <- make_uec(excel_df, "Work-deprecated", "School-deprecated", "Work") +check_school_df <- school_list$differences + +escort_list <- make_uec(excel_df, "Work-deprecated", "Escort-deprecated", "Work") +check_escort_df <- escort_list$differences + +shopping_list <- make_uec(excel_df, "Work-deprecated", "Shopping-deprecated", "Work") +check_shopping_df <- shopping_list$differences + +eatout_list <- make_uec(excel_df, "Shopping-deprecated", "EatOut-deprecated", "Shopping") +check_eatout_df <- eatout_list$differences + +othmaint_list <- make_uec(excel_df, "Shopping-deprecated", "OthMaint-deprecated", "Shopping") +check_othmaint_df <- othmaint_list$differences + +social_list <- make_uec(excel_df, "Shopping-deprecated", "Social-deprecated", "Shopping") +check_social_df <- social_list$differences + +othdiscr_list <- make_uec(excel_df, "Shopping-deprecated", "OthDiscr-deprecated", "Shopping") +check_othdiscr_df <- othdiscr_list$differences + +workbased_list <- make_uec(excel_df, "Shopping-deprecated", "WorkBased-deprecated", "Shopping") +check_workbased_df <- workbased_list$differences + +df <- workbased_list$uec +``` + +# Write to disk +```{r write} +write_csv(univ_list$uec, file = "update-university.csv") +write_csv(school_list$uec, file = "update-school.csv") +write_csv(escort_list$uec, file = "update-escort.csv") +write_csv(shopping_list$uec, file = "update-shopping.csv") +write_csv(eatout_list$uec, file = "update-eatout.csv") +write_csv(othmaint_list$uec, file = "update-othmaint.csv") +write_csv(social_list$uec, file = "update-social.csv") +write_csv(othdiscr_list$uec, file = "update-othdiscr.csv") +write_csv(workbased_list$uec, file = "update-workbased.csv") +``` + diff --git a/utilities/make-mode-choice/make-mode-choice.Rproj b/utilities/make-mode-choice/make-mode-choice.Rproj new file mode 100644 index 000000000..8e3c2ebc9 --- /dev/null +++ b/utilities/make-mode-choice/make-mode-choice.Rproj @@ -0,0 +1,13 @@ +Version: 1.0 + +RestoreWorkspace: Default +SaveWorkspace: Default +AlwaysSaveHistory: Default + +EnableCodeIndexing: Yes +UseSpacesForTab: Yes +NumSpacesForTab: 2 +Encoding: UTF-8 + +RnwWeave: Sweave +LaTeX: pdfLaTeX diff --git a/utilities/make-mode-choice/update-eatout.csv b/utilities/make-mode-choice/update-eatout.csv new file mode 100644 index 000000000..766934acc --- /dev/null +++ b/utilities/make-mode-choice/update-eatout.csv @@ -0,0 +1,296 @@ +row_number,token,description,filter,formula,index +1,terminalTime,Terminal time (minutes),,TERMINAL,z +2,freeParkingAllowed,"Switch: if 1, travelers assumed to have subsidized parking to not pay the parking fee",,0, +3,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed,@freeParking, +4,hourlyParkingCost,Off-peak hourly parking cost,freeParkingAvailable==2,OPRKCST,z +5,destTopology,Destination zone topology,,TOPOLOGY,z +6,destCounty,Destination County,,COUNTY,z +7,origCounty,Origin County,,@origCounty, +8,valueOfTime,Value of Time,,@valueOfTime, +9,autos,Household autos,,@autos, +10,workers,Household workers,,@workers, +11,hhSize,Household size (number of persons),,@hhSize, +12,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +13,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +14,age,Person age,,@age, +15,timeOutbound,Time of day for outbound trip,,@timeOutbound, +16,timeInbound,Time of day for inbound trip,,@timeInbound, +17,tourDuration,"Tour duration, in hours",freeParkingAvailable==2,@tourDuration, +18,tourCategoryJoint,Joint tour,,@tourCategoryJoint, +19,numberOfParticipantsInJointTour,Number of participants in joint tour,tourCategoryJoint,@numberOfParticipantsInJointTour, +20,tourCategorySubtour,Work based subtour,,@tourCategorySubtour, +21,workTourModeIsSOV,Mode for work tour is SOV,tourCategorySubtour,@workTourModeIsSOV, +22,workTourModeIsBike,Mode for work tour is Bike,tourCategorySubtour,@workTourModeIsBike, +23,destZoneAreaType,Area type,,@areaType, +24,originDensityIndex,Origin zone density index,,@originDensityIndex, +25,densityIndex,Destination zone density index (hhdens*empdens)/(hhdens+empdens),,@densityIndex, +26,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +27,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +28,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +29,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +30,c_ivt,In-vehicle time coefficient,,-1.7500000000000002E-2, +31,c_ivt_lrt,In-vehicle time coefficient on light rail,,0.90 * c_ivt, +32,c_ivt_ferry,In-vehicle time coefficient on ferry,,0.80 * c_ivt, +33,c_ivt_exp,In-vehicle time coefficient on express bus,,1.00 * c_ivt, +34,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,0.80 * c_ivt, +35,c_ivt_com,In-vehicle time coefficient on commuter rail,,0.70 * c_ivt, +36,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,2.00 * c_ivt, +37,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,10.00 * c_ivt, +38,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,4.00 * c_ivt, +39,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,20.00 * c_ivt, +40,c_cost,"Cost coefficient, derived from Value of Time",,(0.60 * c_ivt) / valueOfTime, +41,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,2.00 * c_ivt, +42,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,1.00 * c_ivt, +43,c_wacc,Walk access time coefficient,,2.00 * c_ivt, +44,c_wegr,Walk egress time coefficient,,2.00 * c_ivt, +45,c_waux,Walk auxilliary time coefficient,,2.00 * c_ivt, +46,c_dtim,Drive access time coefficient,,2.00 * c_ivt, +47,c_xwait,Transfer wait time coefficient,,2.00 * c_ivt, +48,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +49,c_xfers_wlk,"Transfer penalty, walk",,30.00 * c_ivt, +50,c_xfers_drv,"Transfer penalty, drive-transit",,40.00 * c_ivt, +51,c_drvtrn_distpen_0,Drive-transit OD distance penalty at zero miles,,270.00 * c_ivt, +52,c_drvtrn_distpen_max,Drive-transit OD distance penalty miles at phase-out,,15, +53,c_topology_walk,"Topology dummy coefficient, applied to walk",,15.00 * c_ivt, +54,c_topology_bike,"Topology dummy coefficient, applied to bike",,20.00 * c_ivt, +55,c_topology_trn,"Topology dummy coefficient, applied to transit",,2.20 * c_ivt, +56,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,, +57,c_age1619_da,Age 16-19--Drive Alone,,0, +58,c_age010_trn,Age 0-10--Transit,,0, +59,c_age16p_sr,Age 16+ -- Shared Ride,,78.05714286 * c_ivt, +60,c_hhsize1_sr,Household Size 1--Shared Ride,,0, +61,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +62,costPerMile,Auto operating cost per mile,,18.29, +63,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +64,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +65,waitThresh,Wait time threshold to segment coefficients (minutes of directional wait),,10, +66,walkThresh,Walk threshold to segment coefficients (miles),,1.5, +67,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333298, +68,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666596, +69,walkSpeed,Walk speed (miles per hour),,3, +70,bikeThresh,Bike threshold to segment coefficients (miles),,6, +71,bikeSpeed,Bike speed (miles per hour),,12, +72,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +73,indivTour,Individual tour,tourCategoryJoint==0,1, +74,upperEA,Upper limit on time of day for the Early morning time period,,5, +75,upperAM,Upper limit on time of day for the AM peak time period,,9, +76,upperMD,Upper limit on time of day for the Midday time period,,14, +77,upperPM,Upper limit on time of day for the PM peak time period,,18, +78,upperEV,Upper limit on time of day for the Evening time period,,21, +79,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +80,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +81,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +82,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +83,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +84,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +85,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +86,walkTransitPossible,Walk to transit is possible,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +87,driveTransitPossible,Drive to transit is possible,,walkTransitDest*(1-zeroAutoHh), +88,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +89,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +90,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +91,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +92,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA)*(timeOutbound<=upperAM),2, +109,outPeriod,Outbound period index -- 3 if Midday outbound period,(timeOutbound>upperAM)*(timeOutbound<=upperMD),3, +110,outPeriod,Outbound period index -- 4 if PM Peak outbound period,(timeOutbound>upperMD)*(timeOutbound<=upperPM),4, +111,outPeriod,Outbound period index -- 5 if Evening Peak outbound period,(timeOutbound>upperPM)*(timeOutbound<=upperEV),5, +112,outPeriod,Outbound period index -- 6 if Night outbound period,(timeOutbound>upperEV),6, +113,inPeriod,Inbound period index -- 1 if Early morning inbound period,,"if(timeInbound<=upperEA,1,0)", +114,inPeriod,Inbound period index -- 2 if AM Peak inbound period,inPeriod==0,"if(timeInbound>upperEA,1,0)*if(timeInbound<=upperAM,2,0)", +115,inPeriod,Inbound period index -- 3 if Midday inbound period,inPeriod==0,"if(timeInbound>upperAM,1,0)*if(timeInbound<=upperMD,3,0)", +116,inPeriod,Inbound period index -- 4 if PM Peak inbound period,inPeriod==0,"if(timeInbound>upperMD,1,0)*if(timeInbound<=upperPM,4,0)", +117,inPeriod,Inbound period index -- 5 if Evening inbound period,inPeriod==0,"if(timeInbound>upperPM,1,0)*if(timeInbound<=upperEV,4,0)", +118,inPeriod,Inbound period index -- 6 if Night inbound period,inPeriod==0,"if(timeInbound>upperNT,6,0)", +119,sovOut,SOV outbound mode is available,,"if(SOV_TIME[outPeriod]>0,1,0)",od +120,sovIn,SOV inbound mode is available,,"if(SOV_TIME[inPeriod]>0,1,0)",do +121,sovAvailable,SOV mode is available,sovOut,sovIn, +122,hov2Out,HOV 2 outbound mode is available,,"if(HOV2_TIME[outPeriod]>0,1,0)",od +123,hov2In,HOV 2 inbound mode is available,,"if(HOV2_TIME[inPeriod]>0,1,0)",do +124,hov2Available,HOV 2 mode is available,hov2Out,hov2In, +125,hov3Out,HOV 3+ outbound mode is available,,"if(HOV3_TIME[outPeriod]>0,1,0)",od +126,hov3In,HOV 3+ inbound mode is available,,"if(HOV3_TIME[inPeriod]>0,1,0)",do +127,hov3Available,HOV 3+ mode is available,hov3Out,hov3In, +128,walkTransitAvailable,Walk transit mode is available for the tour,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_WLK_TOTIVT[inPeriod]/100>0),"od,do,od,do" +129,pnrTransitAvailable,Park and ride transit mode is available for the tour,driveTransitPossible,(PNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_PNR_TOTIVT[inPeriod]/100>0),"od,do" +130,knrTransitAvailable,Kiss and ride transit mode is available for the tour,driveTransitPossible,(KNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_KNR_TOTIVT[inPeriod]/100>0),"od,do,od,do" +131,,Drive alone - Unavailable,,sovAvailable==0, +132,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +133,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16)*(useAV==0),1, +134,,Drive alone - Unavailable for joint tours,tourCategoryJoint==1,1, +135,,Drive alone - Unavailable if didn't drive to work,tourCategorySubtour==1,workTourModeIsSOV==0, +136,,Drive alone - In-vehicle time,sovAvailable,c_ivt*(SOV_TIME[outPeriod]+SOV_TIME[inPeriod])*autoIVTFactor,"od,do" +137,,Drive alone - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +138,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*(SOV_DIST[outPeriod]+SOV_DIST[inPeriod]))*autoCPMFactor,"od,do" +139,,Drive alone - Parking cost,sovAvailable,c_cost*dailyParkingCost*autoParkingCostFactor, +140,,Drive alone - Bridge toll,sovAvailable,c_cost*(SOV_BTOLL[outPeriod]+SOV_BTOLL[inPeriod]),"od,do" +141,,Drive alone - Value toll,sovAvailable,"c_cost*(SOV_VTOLL[outPeriod]+SOV_VTOLL[inPeriod])*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +142,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +143,,Shared ride 2 - Unavailable,,hov2Available==0, +144,,Shared ride 2 - Unavailable based on party size,tourCategoryJoint==1,numberOfParticipantsInJointTour>2, +145,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*(HOV2_TIME[outPeriod]+HOV2_TIME[inPeriod])*autoIVTFactor,"od,do" +146,,Shared ride 2 - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +147,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*(HOV2_DIST[outPeriod]+HOV2_DIST[inPeriod]))*autoCPMFactor,"od,do" +148,,Shared ride 2 - Parking cost,hov2Available,c_cost*dailyParkingCost/costShareSr2*autoParkingCostFactor, +149,,Shared ride 2 - Bridge toll,hov2Available,c_cost*(HOV2_BTOLL[outPeriod]+HOV2_BTOLL[inPeriod])/costShareSr2,"od,do" +150,,Shared ride 2 - Value toll,hov2Available,"c_cost*(HOV2_VTOLL[outPeriod]+HOV2_VTOLL[inPeriod])/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +151,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +152,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +153,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +154,,Shared ride 3+ - Unavailable,,hov3Available==0, +155,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*(HOV3_TIME[outPeriod]+HOV3_TIME[inPeriod])*autoIVTFactor,"od,do" +156,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +157,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*(HOV3_DIST[outPeriod]+HOV3_DIST[inPeriod]))*autoCPMFactor,"od,do" +158,,Shared ride 3+ - Parking cost,hov3Available,c_cost*dailyParkingCost/costShareSr3*autoParkingCostFactor, +159,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*(HOV3_BTOLL[outPeriod]+HOV3_BTOLL[inPeriod])/costShareSr3,"od,do" +160,,Shared ride 3+ - Value toll,hov3Available,"c_cost*(HOV3_VTOLL[outPeriod]+HOV3_VTOLL[inPeriod])/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +161,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +162,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +163,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +164,,Walk - Time up to 2 miles,,"c_walkTimeShort*min((DISTWALK+DISTWALK)*60/walkSpeed, walkThresh*2*60/walkSpeed)","od,do" +165,,Walk - Time beyond 2 of a miles,,"c_walkTimeLong*max((DISTWALK+DISTWALK)*60/walkSpeed - walkThresh*2*60/walkSpeed, 0)","od,do" +166,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +167,,Walk - Topology,,c_topology_walk*destTopology, +168,,Bike - Unavailable if didn't bike to work,(tourCategorySubtour==1)*(workTourModeIsBike==0),1, +169,,Bike - Time up to 2 miles,,"c_bikeTimeShort*min((DISTBIKE+DISTBIKE)*60/bikeSpeed, bikeThresh*2*60/bikeSpeed)","od,do" +170,,Bike - Time beyond 2 of a miles,,"c_bikeTimeLong*max((DISTBIKE+DISTBIKE)*60/bikeSpeed - bikeThresh*2*60/bikeSpeed, 0)","od,do" +171,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +172,,Bike - Topology,,c_topology_bike*destTopology, +173,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +174,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*(WLK_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_WLK_IVT_LOC[inPeriod]/100),"od,do" +175,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*(WLK_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_WLK_IVT_EXP[inPeriod]/100),"od,do" +176,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*(WLK_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_WLK_IVT_LRT[inPeriod]/100),"od,do" +177,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*(WLK_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_WLK_IVT_FRY[inPeriod]/100),"od,do" +178,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*(WLK_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_WLK_IVT_HVY[inPeriod]/100),"od,do" +179,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*(WLK_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_WLK_IVT_COM[inPeriod]/100),"od,do" +180,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiwait*(min(WLK_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_WLK_IWAIT[inPeriod]/100,waitThresh))","od,do" +181,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiwait*(max(WLK_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_WLK_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +182,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*(WLK_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_WLK_XWAIT[inPeriod]/100),"od,do" +183,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*(max(WLK_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_WLK_BOARDS[inPeriod]-1,0))","od,do" +184,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*(originWalkTime+originWalkTime), +185,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*(destinationWalkTime+destinationWalkTime), +186,,Walk to Transit - Walk other time,walkCommuterAvailable,c_waux*(WLK_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_WLK_WAUX[inPeriod]/100),"od,do" +187,,Walk to Transit - Fare,walkCommuterAvailable,"c_cost*(WLK_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_WLK_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))","od,do" +188,,Walk to Transit - Destination zone densityIndex,walkCommuterAvailable,c_densityIndex*densityIndex, +189,,Walk to Transit - Topology,walkCommuterAvailable,c_topology_trn*destTopology, +190,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +191,,Park and ride Transit - Unavailable,,pnrTransitAvailable==0, +192,,Park and ride Transit - Unavailable for zero auto households,autos==0,1, +193,,Park and ride Transit - Unavailable for persons less than 16,age<16,1, +194,,Park and ride Transit - In-vehicle time on local bus,pnrTransitAvailable,c_ivt*(PNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_PNR_IVT_LOC[inPeriod]/100),"od,do" +195,,Park and ride Transit - In-vehicle time on express bus,pnrTransitAvailable,c_ivt_exp*(PNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_PNR_IVT_EXP[inPeriod]/100),"od,do" +196,,Park and ride Transit - In-vehicle time on light rail,pnrTransitAvailable,c_ivt_lrt*(PNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_PNR_IVT_LRT[inPeriod]/100),"od,do" +197,,Park and ride Transit - In-vehicle time on ferry,pnrTransitAvailable,c_ivt_ferry*(PNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_PNR_IVT_FRY[inPeriod]/100),"od,do" +198,,Park and ride Transit - In-vehicle time on heavy rail,pnrTransitAvailable,c_ivt_hvy*(PNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_PNR_IVT_HVY[inPeriod]/100),"od,do" +199,,Park and ride Transit - In-vehicle time on commuter rail,pnrTransitAvailable,c_ivt_com*(PNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_PNR_IVT_COM[inPeriod]/100),"od,do" +200,,Park and ride Transit - Short iwait time,pnrTransitAvailable,"c_shortiwait*(min(PNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_PNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +201,,Park and ride Transit - Long iwait time,pnrTransitAvailable,"c_longiwait*(max(PNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_PNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +202,,Park and ride Transit - transfer wait time,pnrTransitAvailable,c_xwait*(PNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_PNR_XWAIT[inPeriod]/100),"od,do" +203,,Park and ride Transit - number of transfers,pnrTransitAvailable,"c_xfers_drv*(max(PNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_PNR_BOARDS[inPeriod]-1,0))","od,do" +204,,Park and ride Transit - Drive time,pnrTransitAvailable,c_dtim*(PNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_PNR_DTIM[inPeriod]/100),"od,do" +205,,Park and ride Transit - Walk access time (at attraction end),pnrTransitAvailable,c_wacc*(destinationWalkTime), +206,,Park and ride Transit - Walk egress time (at attraction end),pnrTransitAvailable,c_wegr*(destinationWalkTime), +207,,Park and ride Transit - Walk other time,pnrTransitAvailable,c_waux*(PNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_PNR_WAUX[inPeriod]/100),"od,do" +208,,Park and ride Transit - Fare and operating cost,pnrTransitAvailable,"c_cost*((PNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_PNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +209,,Park and ride Transit - Ratio of drive access distance to OD distance,pnrTransitAvailable,c_dacc_ratio*((PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +210,,Park and ride Transit - Destination zone densityIndex,pnrTransitAvailable,c_densityIndex*densityIndex, +211,,Park and ride Transit - Topology,pnrTransitAvailable,c_topology_trn*destTopology, +212,,Park and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Kiss and ride Transit - Unavailable,,knrTransitAvailable==0, +214,,Kiss and ride Transit - Unavailable for zero auto households,autos==0,1, +215,,Kiss and ride Transit - Unavailable for persons less than 16,age<16,1, +216,,Kiss and ride Transit - In-vehicle time on local bus,knrTransitAvailable,c_ivt*(KNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_KNR_IVT_LOC[inPeriod]/100),"od,do" +217,,Kiss and ride Transit - In-vehicle time on express bus,knrTransitAvailable,c_ivt_exp*(KNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_KNR_IVT_EXP[inPeriod]/100),"od,do" +218,,Kiss and ride Transit - In-vehicle time on light rail,knrTransitAvailable,c_ivt_lrt*(KNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_KNR_IVT_LRT[inPeriod]/100),"od,do" +219,,Kiss and ride Transit - In-vehicle time on ferry,knrTransitAvailable,c_ivt_ferry*(KNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_KNR_IVT_FRY[inPeriod]/100),"od,do" +220,,Kiss and ride Transit - In-vehicle time on heavy rail,knrTransitAvailable,c_ivt_hvy*(KNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_KNR_IVT_HVY[inPeriod]/100),"od,do" +221,,Kiss and ride Transit - In-vehicle time on commuter rail,knrTransitAvailable,c_ivt_com*(KNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_KNR_IVT_COM[inPeriod]/100),"od,do" +222,,Kiss and ride Transit - Short iwait time,knrTransitAvailable,"c_shortiwait*(min(KNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_KNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +223,,Kiss and ride Transit - Long iwait time,knrTransitAvailable,"c_longiwait*(max(KNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_KNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +224,,Kiss and ride Transit - transfer wait time,knrTransitAvailable,c_xwait*(KNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_KNR_XWAIT[inPeriod]/100),"od,do" +225,,Kiss and ride Transit - number of transfers,knrTransitAvailable,"c_xfers_drv*(max(KNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_KNR_BOARDS[inPeriod]-1,0))","od,do" +226,,Kiss and ride Transit - Drive time,knrTransitAvailable,c_dtim*(KNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_KNR_DTIM[inPeriod]/100),"od,do" +227,,Kiss and ride Transit - Walk access time (at attraction end),knrTransitAvailable,c_wacc*(destinationWalkTime), +228,,Kiss and ride Transit - Walk egress time (at attraction end),knrTransitAvailable,c_wegr*(destinationWalkTime), +229,,Kiss and ride Transit - Walk other time,knrTransitAvailable,c_waux*(KNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_KNR_WAUX[inPeriod]/100),"od,do" +230,,Kiss and ride Transit - Fare and operating cost,knrTransitAvailable,"c_cost*((KNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_KNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +231,,Kiss and ride Transit - Ratio of drive access distance to OD distance,knrTransitAvailable,c_dacc_ratio*((KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +232,,Kiss and ride Transit - Destination zone densityIndex,knrTransitAvailable,c_densityIndex*densityIndex, +233,,Kiss and ride Transit - Topology,knrTransitAvailable,c_topology_trn*destTopology, +234,,Kiss and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +235,,Ride hail - In-vehicle time,,c_ivt*(HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]),"od,do" +236,,Ride hail - Wait time,,c_ivt*1.5*totalWaitTaxi, +237,,Ride hail - Tolls,,c_cost*(HOV2TOLL_VTOLL[outPeriod] + HOV2TOLL_VTOLL[inPeriod]),"od,do" +238,,Ride hail - Bridge toll,,c_cost*(HOV2TOLL_BTOLL[outPeriod] + HOV2TOLL_BTOLL[inPeriod]),"od,do" +239,,Ride hail - Fare,,c_cost*(costInitialTaxi*2 + (HOV2TOLL_DIST[outPeriod]+HOV2TOLL_DIST[inPeriod]) * costPerMileTaxi + (HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]) * costPerMinuteTaxi )*100,"od,do,od,do" +240,,Walk - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,1.57732586568781, +241,,Walk - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,2.5500710615922202, +242,,Walk - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,1.9431761346474099, +243,,Bike - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.7366540882323499E-2, +244,,Bike - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,6.2182802486794198E-2, +245,,Bike - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.48392933656572, +246,,Shared ride 2 - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.43199457274731, +247,,Shared ride 2 - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.88700714334679698, +248,,Shared ride 2 - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.70599617144003801, +249,,Shared ride 3+ - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.79586316675695, +250,,Shared ride 3+ - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,1.0642861726414901, +251,,Shared ride 3+ - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.55909458214101604, +252,,Walk to Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,3.6358887906785, +253,,Walk to Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.15690495264132001, +254,,Walk to Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.6595498119666301, +255,,Park and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +256,,Park and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437499, +257,,Park and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656499, +258,,Kiss and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +259,,Kiss and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437499, +260,,Kiss and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656499, +261,,Taxi - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0.37747431280016502, +262,,Taxi - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,-0.203434063777161, +263,,Taxi - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.27974912056504, +264,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-2.3505204046613102, +265,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6817039430815797, +266,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.7874728886686002, +267,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.4556271225409203, +268,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-8.0967498335842301, +269,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.5927750116185697, +270,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.12790643435973, +271,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,1.7942435719105501, +272,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,0.36718430827121301, +273,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.3763601573028801, +274,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-2.4868225477082002, +275,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-2.3150366951619401, +276,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-1.52520894642338, +277,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-6.2606050432642402, +278,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.4530509448000402, +279,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,0, +280,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6369494640971096, +281,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.0277331325007601, +282,,Taxi - Alternative-specific constant - Zero auto - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.5792091796996699, +283,,Taxi - Alternative-specific constant - Auto deficient - Joint Tours,tourCategoryJoint*autoDeficientHh,-9.8157175798197507, +284,,Taxi - Alternative-specific constant - Auto sufficient - Joint Tours,tourCategoryJoint*autoSufficientHh,-11.709876913156799, +285,,Walk to Transit - to CBD dummy,cbdDummy,0, +286,,Drive to Transit - to CBD dummy,cbdDummy,0, +287,,Walk to Transit - to San Francisco dummy,destCounty==1,1.05, +288,,Drive to Transit - to San Francisco dummy,destCounty==1,0.35000000000000003, +289,,Walk to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35, +290,,Drive to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35, +291,,Walk to Transit - from San Francisco dummy,origCounty==1,8.7499999999999994E-2, +292,,Drive to Transit - from San Francisco dummy,origCounty==1,1.3125000000000002, +293,,Drive to Transit - distance penalty,,"min(0,c_drvtrn_distpen_0*(1-DIST/c_drvtrn_distpen_max))",od +294,,Walk not available for long distances,DISTWALK>3,1,od +295,,Bike not available for long distances,DISTBIKE>8,1,od diff --git a/utilities/make-mode-choice/update-escort.csv b/utilities/make-mode-choice/update-escort.csv new file mode 100644 index 000000000..3d0b53221 --- /dev/null +++ b/utilities/make-mode-choice/update-escort.csv @@ -0,0 +1,296 @@ +row_number,token,description,filter,formula,index +1,terminalTime,Terminal time (minutes),,TERMINAL,z +2,freeParkingAllowed,"Switch: if 1, travelers assumed to have subsidized parking to not pay the parking fee",,0, +3,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed,@freeParking, +4,hourlyParkingCost,Peak hourly parking cost,freeParkingAvailable==2,PRKCST,z +5,destTopology,Destination zone topology,,TOPOLOGY,z +6,destCounty,Destination County,,COUNTY,z +7,origCounty,Origin County,,@origCounty, +8,valueOfTime,Value of Time,,@valueOfTime, +9,autos,Household autos,,@autos, +10,workers,Household workers,,@workers, +11,hhSize,Household size (number of persons),,@hhSize, +12,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +13,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +14,age,Person age,,@age, +15,timeOutbound,Time of day for outbound trip,,@timeOutbound, +16,timeInbound,Time of day for inbound trip,,@timeInbound, +17,tourDuration,"Tour duration, in hours",freeParkingAvailable==2,@tourDuration, +18,tourCategoryJoint,Joint tour,,@tourCategoryJoint, +19,numberOfParticipantsInJointTour,Number of participants in joint tour,tourCategoryJoint,@numberOfParticipantsInJointTour, +20,tourCategorySubtour,Work based subtour,,@tourCategorySubtour, +21,workTourModeIsSOV,Mode for work tour is SOV,tourCategorySubtour,@workTourModeIsSOV, +22,workTourModeIsBike,Mode for work tour is Bike,tourCategorySubtour,@workTourModeIsBike, +23,destZoneAreaType,Area type,,@areaType, +24,originDensityIndex,Origin zone density index,,@originDensityIndex, +25,densityIndex,Destination zone density index (hhdens*empdens)/(hhdens+empdens),,@densityIndex, +26,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +27,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +28,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +29,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +30,c_ivt,In-vehicle time coefficient,,-1.7500000000000002E-2, +31,c_ivt_lrt,In-vehicle time coefficient on light rail,,0.90 * c_ivt, +32,c_ivt_ferry,In-vehicle time coefficient on ferry,,0.80 * c_ivt, +33,c_ivt_exp,In-vehicle time coefficient on express bus,,1.00 * c_ivt, +34,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,0.80 * c_ivt, +35,c_ivt_com,In-vehicle time coefficient on commuter rail,,0.70 * c_ivt, +36,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,2.00 * c_ivt, +37,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,10.00 * c_ivt, +38,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,4.00 * c_ivt, +39,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,20.00 * c_ivt, +40,c_cost,"Cost coefficient, derived from Value of Time",,(0.60 * c_ivt) / valueOfTime, +41,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,2.00 * c_ivt, +42,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,1.00 * c_ivt, +43,c_wacc,Walk access time coefficient,,2.00 * c_ivt, +44,c_wegr,Walk egress time coefficient,,2.00 * c_ivt, +45,c_waux,Walk auxilliary time coefficient,,2.00 * c_ivt, +46,c_dtim,Drive access time coefficient,,2.00 * c_ivt, +47,c_xwait,Transfer wait time coefficient,,2.00 * c_ivt, +48,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +49,c_xfers_wlk,"Transfer penalty, walk",,30.00 * c_ivt, +50,c_xfers_drv,"Transfer penalty, drive-transit",,40.00 * c_ivt, +51,c_drvtrn_distpen_0,Drive-transit OD distance penalty at zero miles,,270.00 * c_ivt, +52,c_drvtrn_distpen_max,Drive-transit OD distance penalty miles at phase-out,,15, +53,c_topology_walk,"Topology dummy coefficient, applied to walk",,15.00 * c_ivt, +54,c_topology_bike,"Topology dummy coefficient, applied to bike",,20.00 * c_ivt, +55,c_topology_trn,"Topology dummy coefficient, applied to transit",,2.20 * c_ivt, +56,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,-0.20 * c_ivt, +57,c_age1619_da,Age 16-19--Drive Alone,,0, +58,c_age010_trn,Age 0-10--Transit,,0, +59,c_age16p_sr,Age 16+ -- Shared Ride,,78.05714286 * c_ivt, +60,c_hhsize1_sr,Household Size 1--Shared Ride,,0, +61,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +62,costPerMile,Auto operating cost per mile,,18.29, +63,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +64,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +65,waitThresh,Wait time threshold to segment coefficients (minutes of directional wait),,10, +66,walkThresh,Walk threshold to segment coefficients (miles),,1.5, +67,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333331, +68,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666663, +69,walkSpeed,Walk speed (miles per hour),,3, +70,bikeThresh,Bike threshold to segment coefficients (miles),,6, +71,bikeSpeed,Bike speed (miles per hour),,12, +72,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +73,indivTour,Individual tour,tourCategoryJoint==0,1, +74,upperEA,Upper limit on time of day for the Early morning time period,,5, +75,upperAM,Upper limit on time of day for the AM peak time period,,9, +76,upperMD,Upper limit on time of day for the Midday time period,,14, +77,upperPM,Upper limit on time of day for the PM peak time period,,18, +78,upperEV,Upper limit on time of day for the Evening time period,,21, +79,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +80,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +81,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +82,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +83,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +84,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +85,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +86,walkTransitPossible,Walk to transit is possible,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +87,driveTransitPossible,Drive to transit is possible,,walkTransitDest*(1-zeroAutoHh), +88,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +89,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +90,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +91,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +92,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA)*(timeOutbound<=upperAM),2, +109,outPeriod,Outbound period index -- 3 if Midday outbound period,(timeOutbound>upperAM)*(timeOutbound<=upperMD),3, +110,outPeriod,Outbound period index -- 4 if PM Peak outbound period,(timeOutbound>upperMD)*(timeOutbound<=upperPM),4, +111,outPeriod,Outbound period index -- 5 if Evening Peak outbound period,(timeOutbound>upperPM)*(timeOutbound<=upperEV),5, +112,outPeriod,Outbound period index -- 6 if Night outbound period,(timeOutbound>upperEV),6, +113,inPeriod,Inbound period index -- 1 if Early morning inbound period,,"if(timeInbound<=upperEA,1,0)", +114,inPeriod,Inbound period index -- 2 if AM Peak inbound period,inPeriod==0,"if(timeInbound>upperEA,1,0)*if(timeInbound<=upperAM,2,0)", +115,inPeriod,Inbound period index -- 3 if Midday inbound period,inPeriod==0,"if(timeInbound>upperAM,1,0)*if(timeInbound<=upperMD,3,0)", +116,inPeriod,Inbound period index -- 4 if PM Peak inbound period,inPeriod==0,"if(timeInbound>upperMD,1,0)*if(timeInbound<=upperPM,4,0)", +117,inPeriod,Inbound period index -- 5 if Evening inbound period,inPeriod==0,"if(timeInbound>upperPM,1,0)*if(timeInbound<=upperEV,4,0)", +118,inPeriod,Inbound period index -- 6 if Night inbound period,inPeriod==0,"if(timeInbound>upperNT,6,0)", +119,sovOut,SOV outbound mode is available,,"if(SOV_TIME[outPeriod]>0,1,0)",od +120,sovIn,SOV inbound mode is available,,"if(SOV_TIME[inPeriod]>0,1,0)",do +121,sovAvailable,SOV mode is available,sovOut,sovIn, +122,hov2Out,HOV 2 outbound mode is available,,"if(HOV2_TIME[outPeriod]>0,1,0)",od +123,hov2In,HOV 2 inbound mode is available,,"if(HOV2_TIME[inPeriod]>0,1,0)",do +124,hov2Available,HOV 2 mode is available,hov2Out,hov2In, +125,hov3Out,HOV 3+ outbound mode is available,,"if(HOV3_TIME[outPeriod]>0,1,0)",od +126,hov3In,HOV 3+ inbound mode is available,,"if(HOV3_TIME[inPeriod]>0,1,0)",do +127,hov3Available,HOV 3+ mode is available,hov3Out,hov3In, +128,walkTransitAvailable,Walk transit mode is available for the tour,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_WLK_TOTIVT[inPeriod]/100>0),"od,do,od,do" +129,pnrTransitAvailable,Park and ride transit mode is available for the tour,driveTransitPossible,(PNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_PNR_TOTIVT[inPeriod]/100>0),"od,do" +130,knrTransitAvailable,Kiss and ride transit mode is available for the tour,driveTransitPossible,(KNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_KNR_TOTIVT[inPeriod]/100>0),"od,do,od,do" +131,,Drive alone - Unavailable,,sovAvailable==0, +132,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +133,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16)*(useAV==0),1, +134,,Drive alone - Unavailable for joint tours,tourCategoryJoint==1,1, +135,,Drive alone - Unavailable if didn't drive to work,tourCategorySubtour==1,workTourModeIsSOV==0, +136,,Drive alone - In-vehicle time,sovAvailable,c_ivt*(SOV_TIME[outPeriod]+SOV_TIME[inPeriod])*autoIVTFactor,"od,do" +137,,Drive alone - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +138,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*(SOV_DIST[outPeriod]+SOV_DIST[inPeriod]))*autoCPMFactor,"od,do" +139,,Drive alone - Parking cost,sovAvailable,c_cost*dailyParkingCost*autoParkingCostFactor, +140,,Drive alone - Bridge toll,sovAvailable,c_cost*(SOV_BTOLL[outPeriod]+SOV_BTOLL[inPeriod]),"od,do" +141,,Drive alone - Value toll,sovAvailable,"c_cost*(SOV_VTOLL[outPeriod]+SOV_VTOLL[inPeriod])*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +142,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +143,,Shared ride 2 - Unavailable,,hov2Available==0, +144,,Shared ride 2 - Unavailable based on party size,tourCategoryJoint==1,numberOfParticipantsInJointTour>2, +145,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*(HOV2_TIME[outPeriod]+HOV2_TIME[inPeriod])*autoIVTFactor,"od,do" +146,,Shared ride 2 - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +147,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*(HOV2_DIST[outPeriod]+HOV2_DIST[inPeriod]))*autoCPMFactor,"od,do" +148,,Shared ride 2 - Parking cost,hov2Available,c_cost*dailyParkingCost/costShareSr2*autoParkingCostFactor, +149,,Shared ride 2 - Bridge toll,hov2Available,c_cost*(HOV2_BTOLL[outPeriod]+HOV2_BTOLL[inPeriod])/costShareSr2,"od,do" +150,,Shared ride 2 - Value toll,hov2Available,"c_cost*(HOV2_VTOLL[outPeriod]+HOV2_VTOLL[inPeriod])/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +151,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +152,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +153,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +154,,Shared ride 3+ - Unavailable,,hov3Available==0, +155,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*(HOV3_TIME[outPeriod]+HOV3_TIME[inPeriod])*autoIVTFactor,"od,do" +156,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +157,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*(HOV3_DIST[outPeriod]+HOV3_DIST[inPeriod]))*autoCPMFactor,"od,do" +158,,Shared ride 3+ - Parking cost,hov3Available,c_cost*dailyParkingCost/costShareSr3*autoParkingCostFactor, +159,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*(HOV3_BTOLL[outPeriod]+HOV3_BTOLL[inPeriod])/costShareSr3,"od,do" +160,,Shared ride 3+ - Value toll,hov3Available,"c_cost*(HOV3_VTOLL[outPeriod]+HOV3_VTOLL[inPeriod])/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +161,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +162,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +163,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +164,,Walk - Time up to 2 miles,,"c_walkTimeShort*min((DISTWALK+DISTWALK)*60/walkSpeed, walkThresh*2*60/walkSpeed)","od,do" +165,,Walk - Time beyond 2 of a miles,,"c_walkTimeLong*max((DISTWALK+DISTWALK)*60/walkSpeed - walkThresh*2*60/walkSpeed, 0)","od,do" +166,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +167,,Walk - Topology,,c_topology_walk*destTopology, +168,,Bike - Unavailable if didn't bike to work,(tourCategorySubtour==1)*(workTourModeIsBike==0),1, +169,,Bike - Time up to 2 miles,,"c_bikeTimeShort*min((DISTBIKE+DISTBIKE)*60/bikeSpeed, bikeThresh*2*60/bikeSpeed)","od,do" +170,,Bike - Time beyond 2 of a miles,,"c_bikeTimeLong*max((DISTBIKE+DISTBIKE)*60/bikeSpeed - bikeThresh*2*60/bikeSpeed, 0)","od,do" +171,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +172,,Bike - Topology,,c_topology_bike*destTopology, +173,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +174,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*(WLK_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_WLK_IVT_LOC[inPeriod]/100),"od,do" +175,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*(WLK_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_WLK_IVT_EXP[inPeriod]/100),"od,do" +176,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*(WLK_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_WLK_IVT_LRT[inPeriod]/100),"od,do" +177,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*(WLK_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_WLK_IVT_FRY[inPeriod]/100),"od,do" +178,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*(WLK_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_WLK_IVT_HVY[inPeriod]/100),"od,do" +179,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*(WLK_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_WLK_IVT_COM[inPeriod]/100),"od,do" +180,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiwait*(min(WLK_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_WLK_IWAIT[inPeriod]/100,waitThresh))","od,do" +181,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiwait*(max(WLK_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_WLK_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +182,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*(WLK_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_WLK_XWAIT[inPeriod]/100),"od,do" +183,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*(max(WLK_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_WLK_BOARDS[inPeriod]-1,0))","od,do" +184,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*(originWalkTime+originWalkTime), +185,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*(destinationWalkTime+destinationWalkTime), +186,,Walk to Transit - Walk other time,walkCommuterAvailable,c_waux*(WLK_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_WLK_WAUX[inPeriod]/100),"od,do" +187,,Walk to Transit - Fare,walkCommuterAvailable,"c_cost*(WLK_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_WLK_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))","od,do" +188,,Walk to Transit - Destination zone densityIndex,walkCommuterAvailable,c_densityIndex*densityIndex, +189,,Walk to Transit - Topology,walkCommuterAvailable,c_topology_trn*destTopology, +190,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +191,,Park and ride Transit - Unavailable,,pnrTransitAvailable==0, +192,,Park and ride Transit - Unavailable for zero auto households,autos==0,1, +193,,Park and ride Transit - Unavailable for persons less than 16,age<16,1, +194,,Park and ride Transit - In-vehicle time on local bus,pnrTransitAvailable,c_ivt*(PNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_PNR_IVT_LOC[inPeriod]/100),"od,do" +195,,Park and ride Transit - In-vehicle time on express bus,pnrTransitAvailable,c_ivt_exp*(PNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_PNR_IVT_EXP[inPeriod]/100),"od,do" +196,,Park and ride Transit - In-vehicle time on light rail,pnrTransitAvailable,c_ivt_lrt*(PNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_PNR_IVT_LRT[inPeriod]/100),"od,do" +197,,Park and ride Transit - In-vehicle time on ferry,pnrTransitAvailable,c_ivt_ferry*(PNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_PNR_IVT_FRY[inPeriod]/100),"od,do" +198,,Park and ride Transit - In-vehicle time on heavy rail,pnrTransitAvailable,c_ivt_hvy*(PNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_PNR_IVT_HVY[inPeriod]/100),"od,do" +199,,Park and ride Transit - In-vehicle time on commuter rail,pnrTransitAvailable,c_ivt_com*(PNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_PNR_IVT_COM[inPeriod]/100),"od,do" +200,,Park and ride Transit - Short iwait time,pnrTransitAvailable,"c_shortiwait*(min(PNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_PNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +201,,Park and ride Transit - Long iwait time,pnrTransitAvailable,"c_longiwait*(max(PNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_PNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +202,,Park and ride Transit - transfer wait time,pnrTransitAvailable,c_xwait*(PNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_PNR_XWAIT[inPeriod]/100),"od,do" +203,,Park and ride Transit - number of transfers,pnrTransitAvailable,"c_xfers_drv*(max(PNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_PNR_BOARDS[inPeriod]-1,0))","od,do" +204,,Park and ride Transit - Drive time,pnrTransitAvailable,c_dtim*(PNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_PNR_DTIM[inPeriod]/100),"od,do" +205,,Park and ride Transit - Walk access time (at attraction end),pnrTransitAvailable,c_wacc*(destinationWalkTime), +206,,Park and ride Transit - Walk egress time (at attraction end),pnrTransitAvailable,c_wegr*(destinationWalkTime), +207,,Park and ride Transit - Walk other time,pnrTransitAvailable,c_waux*(PNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_PNR_WAUX[inPeriod]/100),"od,do" +208,,Park and ride Transit - Fare and operating cost,pnrTransitAvailable,"c_cost*((PNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_PNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +209,,Park and ride Transit - Ratio of drive access distance to OD distance,pnrTransitAvailable,c_dacc_ratio*((PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +210,,Park and ride Transit - Destination zone densityIndex,pnrTransitAvailable,c_densityIndex*densityIndex, +211,,Park and ride Transit - Topology,pnrTransitAvailable,c_topology_trn*destTopology, +212,,Park and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Kiss and ride Transit - Unavailable,,knrTransitAvailable==0, +214,,Kiss and ride Transit - Unavailable for zero auto households,autos==0,1, +215,,Kiss and ride Transit - Unavailable for persons less than 16,age<16,1, +216,,Kiss and ride Transit - In-vehicle time on local bus,knrTransitAvailable,c_ivt*(KNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_KNR_IVT_LOC[inPeriod]/100),"od,do" +217,,Kiss and ride Transit - In-vehicle time on express bus,knrTransitAvailable,c_ivt_exp*(KNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_KNR_IVT_EXP[inPeriod]/100),"od,do" +218,,Kiss and ride Transit - In-vehicle time on light rail,knrTransitAvailable,c_ivt_lrt*(KNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_KNR_IVT_LRT[inPeriod]/100),"od,do" +219,,Kiss and ride Transit - In-vehicle time on ferry,knrTransitAvailable,c_ivt_ferry*(KNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_KNR_IVT_FRY[inPeriod]/100),"od,do" +220,,Kiss and ride Transit - In-vehicle time on heavy rail,knrTransitAvailable,c_ivt_hvy*(KNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_KNR_IVT_HVY[inPeriod]/100),"od,do" +221,,Kiss and ride Transit - In-vehicle time on commuter rail,knrTransitAvailable,c_ivt_com*(KNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_KNR_IVT_COM[inPeriod]/100),"od,do" +222,,Kiss and ride Transit - Short iwait time,knrTransitAvailable,"c_shortiwait*(min(KNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_KNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +223,,Kiss and ride Transit - Long iwait time,knrTransitAvailable,"c_longiwait*(max(KNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_KNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +224,,Kiss and ride Transit - transfer wait time,knrTransitAvailable,c_xwait*(KNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_KNR_XWAIT[inPeriod]/100),"od,do" +225,,Kiss and ride Transit - number of transfers,knrTransitAvailable,"c_xfers_drv*(max(KNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_KNR_BOARDS[inPeriod]-1,0))","od,do" +226,,Kiss and ride Transit - Drive time,knrTransitAvailable,c_dtim*(KNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_KNR_DTIM[inPeriod]/100),"od,do" +227,,Kiss and ride Transit - Walk access time (at attraction end),knrTransitAvailable,c_wacc*(destinationWalkTime), +228,,Kiss and ride Transit - Walk egress time (at attraction end),knrTransitAvailable,c_wegr*(destinationWalkTime), +229,,Kiss and ride Transit - Walk other time,knrTransitAvailable,c_waux*(KNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_KNR_WAUX[inPeriod]/100),"od,do" +230,,Kiss and ride Transit - Fare and operating cost,knrTransitAvailable,"c_cost*((KNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_KNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +231,,Kiss and ride Transit - Ratio of drive access distance to OD distance,knrTransitAvailable,c_dacc_ratio*((KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +232,,Kiss and ride Transit - Destination zone densityIndex,knrTransitAvailable,c_densityIndex*densityIndex, +233,,Kiss and ride Transit - Topology,knrTransitAvailable,c_topology_trn*destTopology, +234,,Kiss and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +235,,Ride hail - In-vehicle time,,c_ivt*(HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]),"od,do" +236,,Ride hail - Wait time,,c_ivt*1.5*totalWaitTaxi, +237,,Ride hail - Tolls,,c_cost*(HOV2TOLL_VTOLL[outPeriod] + HOV2TOLL_VTOLL[inPeriod]),"od,do" +238,,Ride hail - Bridge toll,,c_cost*(HOV2TOLL_BTOLL[outPeriod] + HOV2TOLL_BTOLL[inPeriod]),"od,do" +239,,Ride hail - Fare,,c_cost*(costInitialTaxi*2 + (HOV2TOLL_DIST[outPeriod]+HOV2TOLL_DIST[inPeriod]) * costPerMileTaxi + (HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]) * costPerMinuteTaxi )*100,"od,do,od,do" +240,,Walk - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,1.577325865687816, +241,,Walk - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,2.5500710615922282, +242,,Walk - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,1.9431761346474106, +243,,Bike - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.7366540882323533E-2, +244,,Bike - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,6.2182802486794281E-2, +245,,Bike - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.4839293365657247, +246,,Shared ride 2 - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.4319945727473127, +247,,Shared ride 2 - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.88700714334679787, +248,,Shared ride 2 - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.70599617144003857, +249,,Shared ride 3+ - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.7958631667569529, +250,,Shared ride 3+ - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,1.0642861726414936, +251,,Shared ride 3+ - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.55909458214101626, +252,,Walk to Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,3.6358887906785036, +253,,Walk to Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.15690495264132095, +254,,Walk to Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.6595498119666381, +255,,Park and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +256,,Park and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437599, +257,,Park and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656534, +258,,Kiss and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +259,,Kiss and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437599, +260,,Kiss and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656534, +261,,Taxi - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0.37747431280016519, +262,,Taxi - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,-0.20343406377716192, +263,,Taxi - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.2797491205650484, +264,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-2.3505204046613182, +265,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6817039430815885, +266,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.787472888668602, +267,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.4556271225409212, +268,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-8.0967498335842354, +269,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.5927750116185742, +270,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.1279064343597331, +271,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,1.7942435719105556, +272,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,0.36718430827121318, +273,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.376360157302887, +274,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-2.4868225477082002, +275,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-2.3150366951619445, +276,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-1.5252089464233847, +277,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-6.2606050432642473, +278,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.4530509448000402, +279,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,0, +280,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6369494640971141, +281,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.0277331325007699, +282,,Taxi - Alternative-specific constant - Zero auto - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.5792091796996726, +283,,Taxi - Alternative-specific constant - Auto deficient - Joint Tours,tourCategoryJoint*autoDeficientHh,-9.8157175798197525, +284,,Taxi - Alternative-specific constant - Auto sufficient - Joint Tours,tourCategoryJoint*autoSufficientHh,-11.709876913156872, +285,,Walk to Transit - to CBD dummy,cbdDummy,0, +286,,Drive to Transit - to CBD dummy,cbdDummy,0, +287,,Walk to Transit - to San Francisco dummy,destCounty==1,1.2250000000000001, +288,,Drive to Transit - to San Francisco dummy,destCounty==1,1.05, +289,,Walk to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35000000000000003, +290,,Drive to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35000000000000003, +291,,Walk to Transit - from San Francisco dummy,origCounty==1,8.7500000000000008E-2, +292,,Drive to Transit - from San Francisco dummy,origCounty==1,1.2250000000000001, +293,,Drive to Transit - distance penalty,,"min(0,c_drvtrn_distpen_0*(1-DIST/c_drvtrn_distpen_max))",od +294,,Walk not available for long distances,DISTWALK>3,1,od +295,,Bike not available for long distances,DISTBIKE>8,1,od diff --git a/utilities/make-mode-choice/update-othdiscr.csv b/utilities/make-mode-choice/update-othdiscr.csv new file mode 100644 index 000000000..766934acc --- /dev/null +++ b/utilities/make-mode-choice/update-othdiscr.csv @@ -0,0 +1,296 @@ +row_number,token,description,filter,formula,index +1,terminalTime,Terminal time (minutes),,TERMINAL,z +2,freeParkingAllowed,"Switch: if 1, travelers assumed to have subsidized parking to not pay the parking fee",,0, +3,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed,@freeParking, +4,hourlyParkingCost,Off-peak hourly parking cost,freeParkingAvailable==2,OPRKCST,z +5,destTopology,Destination zone topology,,TOPOLOGY,z +6,destCounty,Destination County,,COUNTY,z +7,origCounty,Origin County,,@origCounty, +8,valueOfTime,Value of Time,,@valueOfTime, +9,autos,Household autos,,@autos, +10,workers,Household workers,,@workers, +11,hhSize,Household size (number of persons),,@hhSize, +12,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +13,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +14,age,Person age,,@age, +15,timeOutbound,Time of day for outbound trip,,@timeOutbound, +16,timeInbound,Time of day for inbound trip,,@timeInbound, +17,tourDuration,"Tour duration, in hours",freeParkingAvailable==2,@tourDuration, +18,tourCategoryJoint,Joint tour,,@tourCategoryJoint, +19,numberOfParticipantsInJointTour,Number of participants in joint tour,tourCategoryJoint,@numberOfParticipantsInJointTour, +20,tourCategorySubtour,Work based subtour,,@tourCategorySubtour, +21,workTourModeIsSOV,Mode for work tour is SOV,tourCategorySubtour,@workTourModeIsSOV, +22,workTourModeIsBike,Mode for work tour is Bike,tourCategorySubtour,@workTourModeIsBike, +23,destZoneAreaType,Area type,,@areaType, +24,originDensityIndex,Origin zone density index,,@originDensityIndex, +25,densityIndex,Destination zone density index (hhdens*empdens)/(hhdens+empdens),,@densityIndex, +26,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +27,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +28,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +29,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +30,c_ivt,In-vehicle time coefficient,,-1.7500000000000002E-2, +31,c_ivt_lrt,In-vehicle time coefficient on light rail,,0.90 * c_ivt, +32,c_ivt_ferry,In-vehicle time coefficient on ferry,,0.80 * c_ivt, +33,c_ivt_exp,In-vehicle time coefficient on express bus,,1.00 * c_ivt, +34,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,0.80 * c_ivt, +35,c_ivt_com,In-vehicle time coefficient on commuter rail,,0.70 * c_ivt, +36,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,2.00 * c_ivt, +37,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,10.00 * c_ivt, +38,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,4.00 * c_ivt, +39,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,20.00 * c_ivt, +40,c_cost,"Cost coefficient, derived from Value of Time",,(0.60 * c_ivt) / valueOfTime, +41,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,2.00 * c_ivt, +42,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,1.00 * c_ivt, +43,c_wacc,Walk access time coefficient,,2.00 * c_ivt, +44,c_wegr,Walk egress time coefficient,,2.00 * c_ivt, +45,c_waux,Walk auxilliary time coefficient,,2.00 * c_ivt, +46,c_dtim,Drive access time coefficient,,2.00 * c_ivt, +47,c_xwait,Transfer wait time coefficient,,2.00 * c_ivt, +48,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +49,c_xfers_wlk,"Transfer penalty, walk",,30.00 * c_ivt, +50,c_xfers_drv,"Transfer penalty, drive-transit",,40.00 * c_ivt, +51,c_drvtrn_distpen_0,Drive-transit OD distance penalty at zero miles,,270.00 * c_ivt, +52,c_drvtrn_distpen_max,Drive-transit OD distance penalty miles at phase-out,,15, +53,c_topology_walk,"Topology dummy coefficient, applied to walk",,15.00 * c_ivt, +54,c_topology_bike,"Topology dummy coefficient, applied to bike",,20.00 * c_ivt, +55,c_topology_trn,"Topology dummy coefficient, applied to transit",,2.20 * c_ivt, +56,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,, +57,c_age1619_da,Age 16-19--Drive Alone,,0, +58,c_age010_trn,Age 0-10--Transit,,0, +59,c_age16p_sr,Age 16+ -- Shared Ride,,78.05714286 * c_ivt, +60,c_hhsize1_sr,Household Size 1--Shared Ride,,0, +61,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +62,costPerMile,Auto operating cost per mile,,18.29, +63,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +64,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +65,waitThresh,Wait time threshold to segment coefficients (minutes of directional wait),,10, +66,walkThresh,Walk threshold to segment coefficients (miles),,1.5, +67,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333298, +68,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666596, +69,walkSpeed,Walk speed (miles per hour),,3, +70,bikeThresh,Bike threshold to segment coefficients (miles),,6, +71,bikeSpeed,Bike speed (miles per hour),,12, +72,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +73,indivTour,Individual tour,tourCategoryJoint==0,1, +74,upperEA,Upper limit on time of day for the Early morning time period,,5, +75,upperAM,Upper limit on time of day for the AM peak time period,,9, +76,upperMD,Upper limit on time of day for the Midday time period,,14, +77,upperPM,Upper limit on time of day for the PM peak time period,,18, +78,upperEV,Upper limit on time of day for the Evening time period,,21, +79,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +80,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +81,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +82,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +83,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +84,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +85,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +86,walkTransitPossible,Walk to transit is possible,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +87,driveTransitPossible,Drive to transit is possible,,walkTransitDest*(1-zeroAutoHh), +88,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +89,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +90,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +91,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +92,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA)*(timeOutbound<=upperAM),2, +109,outPeriod,Outbound period index -- 3 if Midday outbound period,(timeOutbound>upperAM)*(timeOutbound<=upperMD),3, +110,outPeriod,Outbound period index -- 4 if PM Peak outbound period,(timeOutbound>upperMD)*(timeOutbound<=upperPM),4, +111,outPeriod,Outbound period index -- 5 if Evening Peak outbound period,(timeOutbound>upperPM)*(timeOutbound<=upperEV),5, +112,outPeriod,Outbound period index -- 6 if Night outbound period,(timeOutbound>upperEV),6, +113,inPeriod,Inbound period index -- 1 if Early morning inbound period,,"if(timeInbound<=upperEA,1,0)", +114,inPeriod,Inbound period index -- 2 if AM Peak inbound period,inPeriod==0,"if(timeInbound>upperEA,1,0)*if(timeInbound<=upperAM,2,0)", +115,inPeriod,Inbound period index -- 3 if Midday inbound period,inPeriod==0,"if(timeInbound>upperAM,1,0)*if(timeInbound<=upperMD,3,0)", +116,inPeriod,Inbound period index -- 4 if PM Peak inbound period,inPeriod==0,"if(timeInbound>upperMD,1,0)*if(timeInbound<=upperPM,4,0)", +117,inPeriod,Inbound period index -- 5 if Evening inbound period,inPeriod==0,"if(timeInbound>upperPM,1,0)*if(timeInbound<=upperEV,4,0)", +118,inPeriod,Inbound period index -- 6 if Night inbound period,inPeriod==0,"if(timeInbound>upperNT,6,0)", +119,sovOut,SOV outbound mode is available,,"if(SOV_TIME[outPeriod]>0,1,0)",od +120,sovIn,SOV inbound mode is available,,"if(SOV_TIME[inPeriod]>0,1,0)",do +121,sovAvailable,SOV mode is available,sovOut,sovIn, +122,hov2Out,HOV 2 outbound mode is available,,"if(HOV2_TIME[outPeriod]>0,1,0)",od +123,hov2In,HOV 2 inbound mode is available,,"if(HOV2_TIME[inPeriod]>0,1,0)",do +124,hov2Available,HOV 2 mode is available,hov2Out,hov2In, +125,hov3Out,HOV 3+ outbound mode is available,,"if(HOV3_TIME[outPeriod]>0,1,0)",od +126,hov3In,HOV 3+ inbound mode is available,,"if(HOV3_TIME[inPeriod]>0,1,0)",do +127,hov3Available,HOV 3+ mode is available,hov3Out,hov3In, +128,walkTransitAvailable,Walk transit mode is available for the tour,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_WLK_TOTIVT[inPeriod]/100>0),"od,do,od,do" +129,pnrTransitAvailable,Park and ride transit mode is available for the tour,driveTransitPossible,(PNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_PNR_TOTIVT[inPeriod]/100>0),"od,do" +130,knrTransitAvailable,Kiss and ride transit mode is available for the tour,driveTransitPossible,(KNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_KNR_TOTIVT[inPeriod]/100>0),"od,do,od,do" +131,,Drive alone - Unavailable,,sovAvailable==0, +132,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +133,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16)*(useAV==0),1, +134,,Drive alone - Unavailable for joint tours,tourCategoryJoint==1,1, +135,,Drive alone - Unavailable if didn't drive to work,tourCategorySubtour==1,workTourModeIsSOV==0, +136,,Drive alone - In-vehicle time,sovAvailable,c_ivt*(SOV_TIME[outPeriod]+SOV_TIME[inPeriod])*autoIVTFactor,"od,do" +137,,Drive alone - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +138,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*(SOV_DIST[outPeriod]+SOV_DIST[inPeriod]))*autoCPMFactor,"od,do" +139,,Drive alone - Parking cost,sovAvailable,c_cost*dailyParkingCost*autoParkingCostFactor, +140,,Drive alone - Bridge toll,sovAvailable,c_cost*(SOV_BTOLL[outPeriod]+SOV_BTOLL[inPeriod]),"od,do" +141,,Drive alone - Value toll,sovAvailable,"c_cost*(SOV_VTOLL[outPeriod]+SOV_VTOLL[inPeriod])*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +142,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +143,,Shared ride 2 - Unavailable,,hov2Available==0, +144,,Shared ride 2 - Unavailable based on party size,tourCategoryJoint==1,numberOfParticipantsInJointTour>2, +145,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*(HOV2_TIME[outPeriod]+HOV2_TIME[inPeriod])*autoIVTFactor,"od,do" +146,,Shared ride 2 - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +147,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*(HOV2_DIST[outPeriod]+HOV2_DIST[inPeriod]))*autoCPMFactor,"od,do" +148,,Shared ride 2 - Parking cost,hov2Available,c_cost*dailyParkingCost/costShareSr2*autoParkingCostFactor, +149,,Shared ride 2 - Bridge toll,hov2Available,c_cost*(HOV2_BTOLL[outPeriod]+HOV2_BTOLL[inPeriod])/costShareSr2,"od,do" +150,,Shared ride 2 - Value toll,hov2Available,"c_cost*(HOV2_VTOLL[outPeriod]+HOV2_VTOLL[inPeriod])/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +151,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +152,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +153,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +154,,Shared ride 3+ - Unavailable,,hov3Available==0, +155,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*(HOV3_TIME[outPeriod]+HOV3_TIME[inPeriod])*autoIVTFactor,"od,do" +156,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +157,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*(HOV3_DIST[outPeriod]+HOV3_DIST[inPeriod]))*autoCPMFactor,"od,do" +158,,Shared ride 3+ - Parking cost,hov3Available,c_cost*dailyParkingCost/costShareSr3*autoParkingCostFactor, +159,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*(HOV3_BTOLL[outPeriod]+HOV3_BTOLL[inPeriod])/costShareSr3,"od,do" +160,,Shared ride 3+ - Value toll,hov3Available,"c_cost*(HOV3_VTOLL[outPeriod]+HOV3_VTOLL[inPeriod])/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +161,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +162,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +163,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +164,,Walk - Time up to 2 miles,,"c_walkTimeShort*min((DISTWALK+DISTWALK)*60/walkSpeed, walkThresh*2*60/walkSpeed)","od,do" +165,,Walk - Time beyond 2 of a miles,,"c_walkTimeLong*max((DISTWALK+DISTWALK)*60/walkSpeed - walkThresh*2*60/walkSpeed, 0)","od,do" +166,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +167,,Walk - Topology,,c_topology_walk*destTopology, +168,,Bike - Unavailable if didn't bike to work,(tourCategorySubtour==1)*(workTourModeIsBike==0),1, +169,,Bike - Time up to 2 miles,,"c_bikeTimeShort*min((DISTBIKE+DISTBIKE)*60/bikeSpeed, bikeThresh*2*60/bikeSpeed)","od,do" +170,,Bike - Time beyond 2 of a miles,,"c_bikeTimeLong*max((DISTBIKE+DISTBIKE)*60/bikeSpeed - bikeThresh*2*60/bikeSpeed, 0)","od,do" +171,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +172,,Bike - Topology,,c_topology_bike*destTopology, +173,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +174,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*(WLK_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_WLK_IVT_LOC[inPeriod]/100),"od,do" +175,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*(WLK_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_WLK_IVT_EXP[inPeriod]/100),"od,do" +176,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*(WLK_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_WLK_IVT_LRT[inPeriod]/100),"od,do" +177,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*(WLK_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_WLK_IVT_FRY[inPeriod]/100),"od,do" +178,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*(WLK_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_WLK_IVT_HVY[inPeriod]/100),"od,do" +179,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*(WLK_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_WLK_IVT_COM[inPeriod]/100),"od,do" +180,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiwait*(min(WLK_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_WLK_IWAIT[inPeriod]/100,waitThresh))","od,do" +181,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiwait*(max(WLK_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_WLK_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +182,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*(WLK_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_WLK_XWAIT[inPeriod]/100),"od,do" +183,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*(max(WLK_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_WLK_BOARDS[inPeriod]-1,0))","od,do" +184,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*(originWalkTime+originWalkTime), +185,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*(destinationWalkTime+destinationWalkTime), +186,,Walk to Transit - Walk other time,walkCommuterAvailable,c_waux*(WLK_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_WLK_WAUX[inPeriod]/100),"od,do" +187,,Walk to Transit - Fare,walkCommuterAvailable,"c_cost*(WLK_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_WLK_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))","od,do" +188,,Walk to Transit - Destination zone densityIndex,walkCommuterAvailable,c_densityIndex*densityIndex, +189,,Walk to Transit - Topology,walkCommuterAvailable,c_topology_trn*destTopology, +190,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +191,,Park and ride Transit - Unavailable,,pnrTransitAvailable==0, +192,,Park and ride Transit - Unavailable for zero auto households,autos==0,1, +193,,Park and ride Transit - Unavailable for persons less than 16,age<16,1, +194,,Park and ride Transit - In-vehicle time on local bus,pnrTransitAvailable,c_ivt*(PNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_PNR_IVT_LOC[inPeriod]/100),"od,do" +195,,Park and ride Transit - In-vehicle time on express bus,pnrTransitAvailable,c_ivt_exp*(PNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_PNR_IVT_EXP[inPeriod]/100),"od,do" +196,,Park and ride Transit - In-vehicle time on light rail,pnrTransitAvailable,c_ivt_lrt*(PNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_PNR_IVT_LRT[inPeriod]/100),"od,do" +197,,Park and ride Transit - In-vehicle time on ferry,pnrTransitAvailable,c_ivt_ferry*(PNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_PNR_IVT_FRY[inPeriod]/100),"od,do" +198,,Park and ride Transit - In-vehicle time on heavy rail,pnrTransitAvailable,c_ivt_hvy*(PNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_PNR_IVT_HVY[inPeriod]/100),"od,do" +199,,Park and ride Transit - In-vehicle time on commuter rail,pnrTransitAvailable,c_ivt_com*(PNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_PNR_IVT_COM[inPeriod]/100),"od,do" +200,,Park and ride Transit - Short iwait time,pnrTransitAvailable,"c_shortiwait*(min(PNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_PNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +201,,Park and ride Transit - Long iwait time,pnrTransitAvailable,"c_longiwait*(max(PNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_PNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +202,,Park and ride Transit - transfer wait time,pnrTransitAvailable,c_xwait*(PNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_PNR_XWAIT[inPeriod]/100),"od,do" +203,,Park and ride Transit - number of transfers,pnrTransitAvailable,"c_xfers_drv*(max(PNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_PNR_BOARDS[inPeriod]-1,0))","od,do" +204,,Park and ride Transit - Drive time,pnrTransitAvailable,c_dtim*(PNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_PNR_DTIM[inPeriod]/100),"od,do" +205,,Park and ride Transit - Walk access time (at attraction end),pnrTransitAvailable,c_wacc*(destinationWalkTime), +206,,Park and ride Transit - Walk egress time (at attraction end),pnrTransitAvailable,c_wegr*(destinationWalkTime), +207,,Park and ride Transit - Walk other time,pnrTransitAvailable,c_waux*(PNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_PNR_WAUX[inPeriod]/100),"od,do" +208,,Park and ride Transit - Fare and operating cost,pnrTransitAvailable,"c_cost*((PNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_PNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +209,,Park and ride Transit - Ratio of drive access distance to OD distance,pnrTransitAvailable,c_dacc_ratio*((PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +210,,Park and ride Transit - Destination zone densityIndex,pnrTransitAvailable,c_densityIndex*densityIndex, +211,,Park and ride Transit - Topology,pnrTransitAvailable,c_topology_trn*destTopology, +212,,Park and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Kiss and ride Transit - Unavailable,,knrTransitAvailable==0, +214,,Kiss and ride Transit - Unavailable for zero auto households,autos==0,1, +215,,Kiss and ride Transit - Unavailable for persons less than 16,age<16,1, +216,,Kiss and ride Transit - In-vehicle time on local bus,knrTransitAvailable,c_ivt*(KNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_KNR_IVT_LOC[inPeriod]/100),"od,do" +217,,Kiss and ride Transit - In-vehicle time on express bus,knrTransitAvailable,c_ivt_exp*(KNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_KNR_IVT_EXP[inPeriod]/100),"od,do" +218,,Kiss and ride Transit - In-vehicle time on light rail,knrTransitAvailable,c_ivt_lrt*(KNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_KNR_IVT_LRT[inPeriod]/100),"od,do" +219,,Kiss and ride Transit - In-vehicle time on ferry,knrTransitAvailable,c_ivt_ferry*(KNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_KNR_IVT_FRY[inPeriod]/100),"od,do" +220,,Kiss and ride Transit - In-vehicle time on heavy rail,knrTransitAvailable,c_ivt_hvy*(KNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_KNR_IVT_HVY[inPeriod]/100),"od,do" +221,,Kiss and ride Transit - In-vehicle time on commuter rail,knrTransitAvailable,c_ivt_com*(KNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_KNR_IVT_COM[inPeriod]/100),"od,do" +222,,Kiss and ride Transit - Short iwait time,knrTransitAvailable,"c_shortiwait*(min(KNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_KNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +223,,Kiss and ride Transit - Long iwait time,knrTransitAvailable,"c_longiwait*(max(KNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_KNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +224,,Kiss and ride Transit - transfer wait time,knrTransitAvailable,c_xwait*(KNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_KNR_XWAIT[inPeriod]/100),"od,do" +225,,Kiss and ride Transit - number of transfers,knrTransitAvailable,"c_xfers_drv*(max(KNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_KNR_BOARDS[inPeriod]-1,0))","od,do" +226,,Kiss and ride Transit - Drive time,knrTransitAvailable,c_dtim*(KNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_KNR_DTIM[inPeriod]/100),"od,do" +227,,Kiss and ride Transit - Walk access time (at attraction end),knrTransitAvailable,c_wacc*(destinationWalkTime), +228,,Kiss and ride Transit - Walk egress time (at attraction end),knrTransitAvailable,c_wegr*(destinationWalkTime), +229,,Kiss and ride Transit - Walk other time,knrTransitAvailable,c_waux*(KNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_KNR_WAUX[inPeriod]/100),"od,do" +230,,Kiss and ride Transit - Fare and operating cost,knrTransitAvailable,"c_cost*((KNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_KNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +231,,Kiss and ride Transit - Ratio of drive access distance to OD distance,knrTransitAvailable,c_dacc_ratio*((KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +232,,Kiss and ride Transit - Destination zone densityIndex,knrTransitAvailable,c_densityIndex*densityIndex, +233,,Kiss and ride Transit - Topology,knrTransitAvailable,c_topology_trn*destTopology, +234,,Kiss and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +235,,Ride hail - In-vehicle time,,c_ivt*(HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]),"od,do" +236,,Ride hail - Wait time,,c_ivt*1.5*totalWaitTaxi, +237,,Ride hail - Tolls,,c_cost*(HOV2TOLL_VTOLL[outPeriod] + HOV2TOLL_VTOLL[inPeriod]),"od,do" +238,,Ride hail - Bridge toll,,c_cost*(HOV2TOLL_BTOLL[outPeriod] + HOV2TOLL_BTOLL[inPeriod]),"od,do" +239,,Ride hail - Fare,,c_cost*(costInitialTaxi*2 + (HOV2TOLL_DIST[outPeriod]+HOV2TOLL_DIST[inPeriod]) * costPerMileTaxi + (HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]) * costPerMinuteTaxi )*100,"od,do,od,do" +240,,Walk - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,1.57732586568781, +241,,Walk - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,2.5500710615922202, +242,,Walk - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,1.9431761346474099, +243,,Bike - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.7366540882323499E-2, +244,,Bike - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,6.2182802486794198E-2, +245,,Bike - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.48392933656572, +246,,Shared ride 2 - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.43199457274731, +247,,Shared ride 2 - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.88700714334679698, +248,,Shared ride 2 - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.70599617144003801, +249,,Shared ride 3+ - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.79586316675695, +250,,Shared ride 3+ - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,1.0642861726414901, +251,,Shared ride 3+ - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.55909458214101604, +252,,Walk to Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,3.6358887906785, +253,,Walk to Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.15690495264132001, +254,,Walk to Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.6595498119666301, +255,,Park and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +256,,Park and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437499, +257,,Park and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656499, +258,,Kiss and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +259,,Kiss and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437499, +260,,Kiss and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656499, +261,,Taxi - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0.37747431280016502, +262,,Taxi - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,-0.203434063777161, +263,,Taxi - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.27974912056504, +264,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-2.3505204046613102, +265,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6817039430815797, +266,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.7874728886686002, +267,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.4556271225409203, +268,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-8.0967498335842301, +269,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.5927750116185697, +270,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.12790643435973, +271,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,1.7942435719105501, +272,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,0.36718430827121301, +273,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.3763601573028801, +274,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-2.4868225477082002, +275,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-2.3150366951619401, +276,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-1.52520894642338, +277,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-6.2606050432642402, +278,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.4530509448000402, +279,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,0, +280,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6369494640971096, +281,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.0277331325007601, +282,,Taxi - Alternative-specific constant - Zero auto - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.5792091796996699, +283,,Taxi - Alternative-specific constant - Auto deficient - Joint Tours,tourCategoryJoint*autoDeficientHh,-9.8157175798197507, +284,,Taxi - Alternative-specific constant - Auto sufficient - Joint Tours,tourCategoryJoint*autoSufficientHh,-11.709876913156799, +285,,Walk to Transit - to CBD dummy,cbdDummy,0, +286,,Drive to Transit - to CBD dummy,cbdDummy,0, +287,,Walk to Transit - to San Francisco dummy,destCounty==1,1.05, +288,,Drive to Transit - to San Francisco dummy,destCounty==1,0.35000000000000003, +289,,Walk to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35, +290,,Drive to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35, +291,,Walk to Transit - from San Francisco dummy,origCounty==1,8.7499999999999994E-2, +292,,Drive to Transit - from San Francisco dummy,origCounty==1,1.3125000000000002, +293,,Drive to Transit - distance penalty,,"min(0,c_drvtrn_distpen_0*(1-DIST/c_drvtrn_distpen_max))",od +294,,Walk not available for long distances,DISTWALK>3,1,od +295,,Bike not available for long distances,DISTBIKE>8,1,od diff --git a/utilities/make-mode-choice/update-othmaint.csv b/utilities/make-mode-choice/update-othmaint.csv new file mode 100644 index 000000000..552dc12ce --- /dev/null +++ b/utilities/make-mode-choice/update-othmaint.csv @@ -0,0 +1,296 @@ +row_number,token,description,filter,formula,index +1,terminalTime,Terminal time (minutes),,TERMINAL,z +2,freeParkingAllowed,"Switch: if 1, travelers assumed to have subsidized parking to not pay the parking fee",,0, +3,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed,@freeParking, +4,hourlyParkingCost,Off-peak hourly parking cost,freeParkingAvailable==2,OPRKCST,z +5,destTopology,Destination zone topology,,TOPOLOGY,z +6,destCounty,Destination County,,COUNTY,z +7,origCounty,Origin County,,@origCounty, +8,valueOfTime,Value of Time,,@valueOfTime, +9,autos,Household autos,,@autos, +10,workers,Household workers,,@workers, +11,hhSize,Household size (number of persons),,@hhSize, +12,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +13,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +14,age,Person age,,@age, +15,timeOutbound,Time of day for outbound trip,,@timeOutbound, +16,timeInbound,Time of day for inbound trip,,@timeInbound, +17,tourDuration,"Tour duration, in hours",freeParkingAvailable==2,@tourDuration, +18,tourCategoryJoint,Joint tour,,@tourCategoryJoint, +19,numberOfParticipantsInJointTour,Number of participants in joint tour,tourCategoryJoint,@numberOfParticipantsInJointTour, +20,tourCategorySubtour,Work based subtour,,@tourCategorySubtour, +21,workTourModeIsSOV,Mode for work tour is SOV,tourCategorySubtour,@workTourModeIsSOV, +22,workTourModeIsBike,Mode for work tour is Bike,tourCategorySubtour,@workTourModeIsBike, +23,destZoneAreaType,Area type,,@areaType, +24,originDensityIndex,Origin zone density index,,@originDensityIndex, +25,densityIndex,Destination zone density index (hhdens*empdens)/(hhdens+empdens),,@densityIndex, +26,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +27,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +28,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +29,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +30,c_ivt,In-vehicle time coefficient,,-1.7500000000000002E-2, +31,c_ivt_lrt,In-vehicle time coefficient on light rail,,0.90 * c_ivt, +32,c_ivt_ferry,In-vehicle time coefficient on ferry,,0.80 * c_ivt, +33,c_ivt_exp,In-vehicle time coefficient on express bus,,1.00 * c_ivt, +34,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,0.80 * c_ivt, +35,c_ivt_com,In-vehicle time coefficient on commuter rail,,0.70 * c_ivt, +36,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,2.00 * c_ivt, +37,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,10.00 * c_ivt, +38,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,4.00 * c_ivt, +39,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,20.00 * c_ivt, +40,c_cost,"Cost coefficient, derived from Value of Time",,(0.60 * c_ivt) / valueOfTime, +41,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,2.00 * c_ivt, +42,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,1.00 * c_ivt, +43,c_wacc,Walk access time coefficient,,2.00 * c_ivt, +44,c_wegr,Walk egress time coefficient,,2.00 * c_ivt, +45,c_waux,Walk auxilliary time coefficient,,2.00 * c_ivt, +46,c_dtim,Drive access time coefficient,,2.00 * c_ivt, +47,c_xwait,Transfer wait time coefficient,,2.00 * c_ivt, +48,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +49,c_xfers_wlk,"Transfer penalty, walk",,30.00 * c_ivt, +50,c_xfers_drv,"Transfer penalty, drive-transit",,40.00 * c_ivt, +51,c_drvtrn_distpen_0,Drive-transit OD distance penalty at zero miles,,270.00 * c_ivt, +52,c_drvtrn_distpen_max,Drive-transit OD distance penalty miles at phase-out,,15, +53,c_topology_walk,"Topology dummy coefficient, applied to walk",,15.00 * c_ivt, +54,c_topology_bike,"Topology dummy coefficient, applied to bike",,20.00 * c_ivt, +55,c_topology_trn,"Topology dummy coefficient, applied to transit",,2.20 * c_ivt, +56,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,, +57,c_age1619_da,Age 16-19--Drive Alone,,0, +58,c_age010_trn,Age 0-10--Transit,,0, +59,c_age16p_sr,Age 16+ -- Shared Ride,,78.05714286 * c_ivt, +60,c_hhsize1_sr,Household Size 1--Shared Ride,,0, +61,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +62,costPerMile,Auto operating cost per mile,,18.29, +63,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +64,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +65,waitThresh,Wait time threshold to segment coefficients (minutes of directional wait),,10, +66,walkThresh,Walk threshold to segment coefficients (miles),,1.5, +67,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333298, +68,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666596, +69,walkSpeed,Walk speed (miles per hour),,3, +70,bikeThresh,Bike threshold to segment coefficients (miles),,6, +71,bikeSpeed,Bike speed (miles per hour),,12, +72,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +73,indivTour,Individual tour,tourCategoryJoint==0,1, +74,upperEA,Upper limit on time of day for the Early morning time period,,5, +75,upperAM,Upper limit on time of day for the AM peak time period,,9, +76,upperMD,Upper limit on time of day for the Midday time period,,14, +77,upperPM,Upper limit on time of day for the PM peak time period,,18, +78,upperEV,Upper limit on time of day for the Evening time period,,21, +79,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +80,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +81,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +82,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +83,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +84,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +85,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +86,walkTransitPossible,Walk to transit is possible,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +87,driveTransitPossible,Drive to transit is possible,,walkTransitDest*(1-zeroAutoHh), +88,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +89,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +90,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +91,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +92,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA)*(timeOutbound<=upperAM),2, +109,outPeriod,Outbound period index -- 3 if Midday outbound period,(timeOutbound>upperAM)*(timeOutbound<=upperMD),3, +110,outPeriod,Outbound period index -- 4 if PM Peak outbound period,(timeOutbound>upperMD)*(timeOutbound<=upperPM),4, +111,outPeriod,Outbound period index -- 5 if Evening Peak outbound period,(timeOutbound>upperPM)*(timeOutbound<=upperEV),5, +112,outPeriod,Outbound period index -- 6 if Night outbound period,(timeOutbound>upperEV),6, +113,inPeriod,Inbound period index -- 1 if Early morning inbound period,,"if(timeInbound<=upperEA,1,0)", +114,inPeriod,Inbound period index -- 2 if AM Peak inbound period,inPeriod==0,"if(timeInbound>upperEA,1,0)*if(timeInbound<=upperAM,2,0)", +115,inPeriod,Inbound period index -- 3 if Midday inbound period,inPeriod==0,"if(timeInbound>upperAM,1,0)*if(timeInbound<=upperMD,3,0)", +116,inPeriod,Inbound period index -- 4 if PM Peak inbound period,inPeriod==0,"if(timeInbound>upperMD,1,0)*if(timeInbound<=upperPM,4,0)", +117,inPeriod,Inbound period index -- 5 if Evening inbound period,inPeriod==0,"if(timeInbound>upperPM,1,0)*if(timeInbound<=upperEV,4,0)", +118,inPeriod,Inbound period index -- 6 if Night inbound period,inPeriod==0,"if(timeInbound>upperNT,6,0)", +119,sovOut,SOV outbound mode is available,,"if(SOV_TIME[outPeriod]>0,1,0)",od +120,sovIn,SOV inbound mode is available,,"if(SOV_TIME[inPeriod]>0,1,0)",do +121,sovAvailable,SOV mode is available,sovOut,sovIn, +122,hov2Out,HOV 2 outbound mode is available,,"if(HOV2_TIME[outPeriod]>0,1,0)",od +123,hov2In,HOV 2 inbound mode is available,,"if(HOV2_TIME[inPeriod]>0,1,0)",do +124,hov2Available,HOV 2 mode is available,hov2Out,hov2In, +125,hov3Out,HOV 3+ outbound mode is available,,"if(HOV3_TIME[outPeriod]>0,1,0)",od +126,hov3In,HOV 3+ inbound mode is available,,"if(HOV3_TIME[inPeriod]>0,1,0)",do +127,hov3Available,HOV 3+ mode is available,hov3Out,hov3In, +128,walkTransitAvailable,Walk transit mode is available for the tour,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_WLK_TOTIVT[inPeriod]/100>0),"od,do,od,do" +129,pnrTransitAvailable,Park and ride transit mode is available for the tour,driveTransitPossible,(PNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_PNR_TOTIVT[inPeriod]/100>0),"od,do" +130,knrTransitAvailable,Kiss and ride transit mode is available for the tour,driveTransitPossible,(KNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_KNR_TOTIVT[inPeriod]/100>0),"od,do,od,do" +131,,Drive alone - Unavailable,,sovAvailable==0, +132,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +133,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16)*(useAV==0),1, +134,,Drive alone - Unavailable for joint tours,tourCategoryJoint==1,1, +135,,Drive alone - Unavailable if didn't drive to work,tourCategorySubtour==1,workTourModeIsSOV==0, +136,,Drive alone - In-vehicle time,sovAvailable,c_ivt*(SOV_TIME[outPeriod]+SOV_TIME[inPeriod])*autoIVTFactor,"od,do" +137,,Drive alone - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +138,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*(SOV_DIST[outPeriod]+SOV_DIST[inPeriod]))*autoCPMFactor,"od,do" +139,,Drive alone - Parking cost,sovAvailable,c_cost*dailyParkingCost*autoParkingCostFactor, +140,,Drive alone - Bridge toll,sovAvailable,c_cost*(SOV_BTOLL[outPeriod]+SOV_BTOLL[inPeriod]),"od,do" +141,,Drive alone - Value toll,sovAvailable,"c_cost*(SOV_VTOLL[outPeriod]+SOV_VTOLL[inPeriod])*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +142,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +143,,Shared ride 2 - Unavailable,,hov2Available==0, +144,,Shared ride 2 - Unavailable based on party size,tourCategoryJoint==1,numberOfParticipantsInJointTour>2, +145,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*(HOV2_TIME[outPeriod]+HOV2_TIME[inPeriod])*autoIVTFactor,"od,do" +146,,Shared ride 2 - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +147,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*(HOV2_DIST[outPeriod]+HOV2_DIST[inPeriod]))*autoCPMFactor,"od,do" +148,,Shared ride 2 - Parking cost,hov2Available,c_cost*dailyParkingCost/costShareSr2*autoParkingCostFactor, +149,,Shared ride 2 - Bridge toll,hov2Available,c_cost*(HOV2_BTOLL[outPeriod]+HOV2_BTOLL[inPeriod])/costShareSr2,"od,do" +150,,Shared ride 2 - Value toll,hov2Available,"c_cost*(HOV2_VTOLL[outPeriod]+HOV2_VTOLL[inPeriod])/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +151,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +152,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +153,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +154,,Shared ride 3+ - Unavailable,,hov3Available==0, +155,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*(HOV3_TIME[outPeriod]+HOV3_TIME[inPeriod])*autoIVTFactor,"od,do" +156,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +157,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*(HOV3_DIST[outPeriod]+HOV3_DIST[inPeriod]))*autoCPMFactor,"od,do" +158,,Shared ride 3+ - Parking cost,hov3Available,c_cost*dailyParkingCost/costShareSr3*autoParkingCostFactor, +159,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*(HOV3_BTOLL[outPeriod]+HOV3_BTOLL[inPeriod])/costShareSr3,"od,do" +160,,Shared ride 3+ - Value toll,hov3Available,"c_cost*(HOV3_VTOLL[outPeriod]+HOV3_VTOLL[inPeriod])/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +161,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +162,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +163,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +164,,Walk - Time up to 2 miles,,"c_walkTimeShort*min((DISTWALK+DISTWALK)*60/walkSpeed, walkThresh*2*60/walkSpeed)","od,do" +165,,Walk - Time beyond 2 of a miles,,"c_walkTimeLong*max((DISTWALK+DISTWALK)*60/walkSpeed - walkThresh*2*60/walkSpeed, 0)","od,do" +166,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +167,,Walk - Topology,,c_topology_walk*destTopology, +168,,Bike - Unavailable if didn't bike to work,(tourCategorySubtour==1)*(workTourModeIsBike==0),1, +169,,Bike - Time up to 2 miles,,"c_bikeTimeShort*min((DISTBIKE+DISTBIKE)*60/bikeSpeed, bikeThresh*2*60/bikeSpeed)","od,do" +170,,Bike - Time beyond 2 of a miles,,"c_bikeTimeLong*max((DISTBIKE+DISTBIKE)*60/bikeSpeed - bikeThresh*2*60/bikeSpeed, 0)","od,do" +171,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +172,,Bike - Topology,,c_topology_bike*destTopology, +173,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +174,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*(WLK_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_WLK_IVT_LOC[inPeriod]/100),"od,do" +175,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*(WLK_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_WLK_IVT_EXP[inPeriod]/100),"od,do" +176,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*(WLK_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_WLK_IVT_LRT[inPeriod]/100),"od,do" +177,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*(WLK_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_WLK_IVT_FRY[inPeriod]/100),"od,do" +178,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*(WLK_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_WLK_IVT_HVY[inPeriod]/100),"od,do" +179,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*(WLK_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_WLK_IVT_COM[inPeriod]/100),"od,do" +180,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiwait*(min(WLK_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_WLK_IWAIT[inPeriod]/100,waitThresh))","od,do" +181,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiwait*(max(WLK_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_WLK_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +182,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*(WLK_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_WLK_XWAIT[inPeriod]/100),"od,do" +183,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*(max(WLK_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_WLK_BOARDS[inPeriod]-1,0))","od,do" +184,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*(originWalkTime+originWalkTime), +185,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*(destinationWalkTime+destinationWalkTime), +186,,Walk to Transit - Walk other time,walkCommuterAvailable,c_waux*(WLK_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_WLK_WAUX[inPeriod]/100),"od,do" +187,,Walk to Transit - Fare,walkCommuterAvailable,"c_cost*(WLK_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_WLK_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))","od,do" +188,,Walk to Transit - Destination zone densityIndex,walkCommuterAvailable,c_densityIndex*densityIndex, +189,,Walk to Transit - Topology,walkCommuterAvailable,c_topology_trn*destTopology, +190,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +191,,Park and ride Transit - Unavailable,,pnrTransitAvailable==0, +192,,Park and ride Transit - Unavailable for zero auto households,autos==0,1, +193,,Park and ride Transit - Unavailable for persons less than 16,age<16,1, +194,,Park and ride Transit - In-vehicle time on local bus,pnrTransitAvailable,c_ivt*(PNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_PNR_IVT_LOC[inPeriod]/100),"od,do" +195,,Park and ride Transit - In-vehicle time on express bus,pnrTransitAvailable,c_ivt_exp*(PNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_PNR_IVT_EXP[inPeriod]/100),"od,do" +196,,Park and ride Transit - In-vehicle time on light rail,pnrTransitAvailable,c_ivt_lrt*(PNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_PNR_IVT_LRT[inPeriod]/100),"od,do" +197,,Park and ride Transit - In-vehicle time on ferry,pnrTransitAvailable,c_ivt_ferry*(PNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_PNR_IVT_FRY[inPeriod]/100),"od,do" +198,,Park and ride Transit - In-vehicle time on heavy rail,pnrTransitAvailable,c_ivt_hvy*(PNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_PNR_IVT_HVY[inPeriod]/100),"od,do" +199,,Park and ride Transit - In-vehicle time on commuter rail,pnrTransitAvailable,c_ivt_com*(PNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_PNR_IVT_COM[inPeriod]/100),"od,do" +200,,Park and ride Transit - Short iwait time,pnrTransitAvailable,"c_shortiwait*(min(PNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_PNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +201,,Park and ride Transit - Long iwait time,pnrTransitAvailable,"c_longiwait*(max(PNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_PNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +202,,Park and ride Transit - transfer wait time,pnrTransitAvailable,c_xwait*(PNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_PNR_XWAIT[inPeriod]/100),"od,do" +203,,Park and ride Transit - number of transfers,pnrTransitAvailable,"c_xfers_drv*(max(PNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_PNR_BOARDS[inPeriod]-1,0))","od,do" +204,,Park and ride Transit - Drive time,pnrTransitAvailable,c_dtim*(PNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_PNR_DTIM[inPeriod]/100),"od,do" +205,,Park and ride Transit - Walk access time (at attraction end),pnrTransitAvailable,c_wacc*(destinationWalkTime), +206,,Park and ride Transit - Walk egress time (at attraction end),pnrTransitAvailable,c_wegr*(destinationWalkTime), +207,,Park and ride Transit - Walk other time,pnrTransitAvailable,c_waux*(PNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_PNR_WAUX[inPeriod]/100),"od,do" +208,,Park and ride Transit - Fare and operating cost,pnrTransitAvailable,"c_cost*((PNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_PNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +209,,Park and ride Transit - Ratio of drive access distance to OD distance,pnrTransitAvailable,c_dacc_ratio*((PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +210,,Park and ride Transit - Destination zone densityIndex,pnrTransitAvailable,c_densityIndex*densityIndex, +211,,Park and ride Transit - Topology,pnrTransitAvailable,c_topology_trn*destTopology, +212,,Park and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Kiss and ride Transit - Unavailable,,knrTransitAvailable==0, +214,,Kiss and ride Transit - Unavailable for zero auto households,autos==0,1, +215,,Kiss and ride Transit - Unavailable for persons less than 16,age<16,1, +216,,Kiss and ride Transit - In-vehicle time on local bus,knrTransitAvailable,c_ivt*(KNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_KNR_IVT_LOC[inPeriod]/100),"od,do" +217,,Kiss and ride Transit - In-vehicle time on express bus,knrTransitAvailable,c_ivt_exp*(KNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_KNR_IVT_EXP[inPeriod]/100),"od,do" +218,,Kiss and ride Transit - In-vehicle time on light rail,knrTransitAvailable,c_ivt_lrt*(KNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_KNR_IVT_LRT[inPeriod]/100),"od,do" +219,,Kiss and ride Transit - In-vehicle time on ferry,knrTransitAvailable,c_ivt_ferry*(KNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_KNR_IVT_FRY[inPeriod]/100),"od,do" +220,,Kiss and ride Transit - In-vehicle time on heavy rail,knrTransitAvailable,c_ivt_hvy*(KNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_KNR_IVT_HVY[inPeriod]/100),"od,do" +221,,Kiss and ride Transit - In-vehicle time on commuter rail,knrTransitAvailable,c_ivt_com*(KNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_KNR_IVT_COM[inPeriod]/100),"od,do" +222,,Kiss and ride Transit - Short iwait time,knrTransitAvailable,"c_shortiwait*(min(KNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_KNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +223,,Kiss and ride Transit - Long iwait time,knrTransitAvailable,"c_longiwait*(max(KNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_KNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +224,,Kiss and ride Transit - transfer wait time,knrTransitAvailable,c_xwait*(KNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_KNR_XWAIT[inPeriod]/100),"od,do" +225,,Kiss and ride Transit - number of transfers,knrTransitAvailable,"c_xfers_drv*(max(KNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_KNR_BOARDS[inPeriod]-1,0))","od,do" +226,,Kiss and ride Transit - Drive time,knrTransitAvailable,c_dtim*(KNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_KNR_DTIM[inPeriod]/100),"od,do" +227,,Kiss and ride Transit - Walk access time (at attraction end),knrTransitAvailable,c_wacc*(destinationWalkTime), +228,,Kiss and ride Transit - Walk egress time (at attraction end),knrTransitAvailable,c_wegr*(destinationWalkTime), +229,,Kiss and ride Transit - Walk other time,knrTransitAvailable,c_waux*(KNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_KNR_WAUX[inPeriod]/100),"od,do" +230,,Kiss and ride Transit - Fare and operating cost,knrTransitAvailable,"c_cost*((KNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_KNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +231,,Kiss and ride Transit - Ratio of drive access distance to OD distance,knrTransitAvailable,c_dacc_ratio*((KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +232,,Kiss and ride Transit - Destination zone densityIndex,knrTransitAvailable,c_densityIndex*densityIndex, +233,,Kiss and ride Transit - Topology,knrTransitAvailable,c_topology_trn*destTopology, +234,,Kiss and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +235,,Ride hail - In-vehicle time,,c_ivt*(HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]),"od,do" +236,,Ride hail - Wait time,,c_ivt*1.5*totalWaitTaxi, +237,,Ride hail - Tolls,,c_cost*(HOV2TOLL_VTOLL[outPeriod] + HOV2TOLL_VTOLL[inPeriod]),"od,do" +238,,Ride hail - Bridge toll,,c_cost*(HOV2TOLL_BTOLL[outPeriod] + HOV2TOLL_BTOLL[inPeriod]),"od,do" +239,,Ride hail - Fare,,c_cost*(costInitialTaxi*2 + (HOV2TOLL_DIST[outPeriod]+HOV2TOLL_DIST[inPeriod]) * costPerMileTaxi + (HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]) * costPerMinuteTaxi )*100,"od,do,od,do" +240,,Walk - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,1.57732586568781, +241,,Walk - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,2.5500710615922202, +242,,Walk - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,1.9431761346474099, +243,,Bike - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.7366540882323499E-2, +244,,Bike - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,6.2182802486794198E-2, +245,,Bike - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.48392933656572, +246,,Shared ride 2 - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.43199457274731, +247,,Shared ride 2 - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.88700714334679698, +248,,Shared ride 2 - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.70599617144003801, +249,,Shared ride 3+ - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.79586316675695, +250,,Shared ride 3+ - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,1.0642861726414901, +251,,Shared ride 3+ - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.55909458214101604, +252,,Walk to Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,3.6358887906785, +253,,Walk to Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.15690495264132001, +254,,Walk to Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.6595498119666301, +255,,Park and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +256,,Park and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437499, +257,,Park and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656499, +258,,Kiss and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +259,,Kiss and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437499, +260,,Kiss and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656499, +261,,Taxi - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0.37747431280016502, +262,,Taxi - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,-0.203434063777161, +263,,Taxi - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.27974912056504, +264,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-2.3505204046613102, +265,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6817039430815797, +266,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.7874728886686002, +267,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.4556271225409203, +268,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-8.0967498335842301, +269,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.5927750116185697, +270,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.12790643435973, +271,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,1.7942435719105501, +272,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,0.36718430827121301, +273,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.3763601573028801, +274,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-2.4868225477082002, +275,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-2.3150366951619401, +276,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-1.52520894642338, +277,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-6.2606050432642402, +278,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.4530509448000402, +279,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,0, +280,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6369494640971096, +281,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.0277331325007601, +282,,Taxi - Alternative-specific constant - Zero auto - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.5792091796996699, +283,,Taxi - Alternative-specific constant - Auto deficient - Joint Tours,tourCategoryJoint*autoDeficientHh,-9.8157175798197507, +284,,Taxi - Alternative-specific constant - Auto sufficient - Joint Tours,tourCategoryJoint*autoSufficientHh,-11.709876913156799, +285,,Walk to Transit - to CBD dummy,cbdDummy,0, +286,,Drive to Transit - to CBD dummy,cbdDummy,0, +287,,Walk to Transit - to San Francisco dummy,destCounty==1,1.2250000000000001, +288,,Drive to Transit - to San Francisco dummy,destCounty==1,1.05, +289,,Walk to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35, +290,,Drive to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35, +291,,Walk to Transit - from San Francisco dummy,origCounty==1,8.7499999999999994E-2, +292,,Drive to Transit - from San Francisco dummy,origCounty==1,1.2250000000000001, +293,,Drive to Transit - distance penalty,,"min(0,c_drvtrn_distpen_0*(1-DIST/c_drvtrn_distpen_max))",od +294,,Walk not available for long distances,DISTWALK>3,1,od +295,,Bike not available for long distances,DISTBIKE>8,1,od diff --git a/utilities/make-mode-choice/update-school.csv b/utilities/make-mode-choice/update-school.csv new file mode 100644 index 000000000..a82c80abd --- /dev/null +++ b/utilities/make-mode-choice/update-school.csv @@ -0,0 +1,296 @@ +row_number,token,description,filter,formula,index +1,terminalTime,Terminal time (minutes),,TERMINAL,z +2,freeParkingAllowed,"Switch: if 1, travelers assumed to have subsidized parking to not pay the parking fee",,0, +3,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed,@freeParking, +4,hourlyParkingCost,Peak hourly parking cost,freeParkingAvailable==2,PRKCST,z +5,destTopology,Destination zone topology,,TOPOLOGY,z +6,destCounty,Destination County,,COUNTY,z +7,origCounty,Origin County,,@origCounty, +8,valueOfTime,Value of Time,,@valueOfTime, +9,autos,Household autos,,@autos, +10,workers,Household workers,,@workers, +11,hhSize,Household size (number of persons),,@hhSize, +12,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +13,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +14,age,Person age,,@age, +15,timeOutbound,Time of day for outbound trip,,@timeOutbound, +16,timeInbound,Time of day for inbound trip,,@timeInbound, +17,tourDuration,"Tour duration, in hours",freeParkingAvailable==2,@tourDuration, +18,tourCategoryJoint,Joint tour,,@tourCategoryJoint, +19,numberOfParticipantsInJointTour,Number of participants in joint tour,tourCategoryJoint,@numberOfParticipantsInJointTour, +20,tourCategorySubtour,Work based subtour,,@tourCategorySubtour, +21,workTourModeIsSOV,Mode for work tour is SOV,tourCategorySubtour,@workTourModeIsSOV, +22,workTourModeIsBike,Mode for work tour is Bike,tourCategorySubtour,@workTourModeIsBike, +23,destZoneAreaType,Area type,,@areaType, +24,originDensityIndex,Origin zone density index,,@originDensityIndex, +25,densityIndex,Destination zone density index (hhdens*empdens)/(hhdens+empdens),,@densityIndex, +26,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +27,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +28,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +29,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +30,c_ivt,In-vehicle time coefficient,,-2.24E-2, +31,c_ivt_lrt,In-vehicle time coefficient on light rail,,0.90 * c_ivt, +32,c_ivt_ferry,In-vehicle time coefficient on ferry,,0.80 * c_ivt, +33,c_ivt_exp,In-vehicle time coefficient on express bus,,1.00 * c_ivt, +34,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,0.80 * c_ivt, +35,c_ivt_com,In-vehicle time coefficient on commuter rail,,0.70 * c_ivt, +36,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,2.00 * c_ivt, +37,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,10.00 * c_ivt, +38,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,4.00 * c_ivt, +39,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,20.00 * c_ivt, +40,c_cost,"Cost coefficient, derived from Value of Time",,(0.60 * c_ivt) / valueOfTime, +41,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,2.00 * c_ivt, +42,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,1.00 * c_ivt, +43,c_wacc,Walk access time coefficient,,2.00 * c_ivt, +44,c_wegr,Walk egress time coefficient,,2.00 * c_ivt, +45,c_waux,Walk auxilliary time coefficient,,2.00 * c_ivt, +46,c_dtim,Drive access time coefficient,,2.00 * c_ivt, +47,c_xwait,Transfer wait time coefficient,,2.00 * c_ivt, +48,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +49,c_xfers_wlk,"Transfer penalty, walk",,30.00 * c_ivt, +50,c_xfers_drv,"Transfer penalty, drive-transit",,40.00 * c_ivt, +51,c_drvtrn_distpen_0,Drive-transit OD distance penalty at zero miles,,270.00 * c_ivt, +52,c_drvtrn_distpen_max,Drive-transit OD distance penalty miles at phase-out,,15, +53,c_topology_walk,"Topology dummy coefficient, applied to walk",,15.00 * c_ivt, +54,c_topology_bike,"Topology dummy coefficient, applied to bike",,20.00 * c_ivt, +55,c_topology_trn,"Topology dummy coefficient, applied to transit",,2.20 * c_ivt, +56,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,-0.20 * c_ivt, +57,c_age1619_da,Age 16-19--Drive Alone,,61.66517857 * c_ivt, +58,c_age010_trn,Age 0-10--Transit,,69.41071429 * c_ivt, +59,c_age16p_sr,Age 16+ -- Shared Ride,,0, +60,c_hhsize1_sr,Household Size 1--Shared Ride,,0, +61,c_hhsize2_sr,Household Size 2--Shared Ride,,28.38839286 * c_ivt, +62,costPerMile,Auto operating cost per mile,,18.29, +63,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +64,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +65,waitThresh,Wait time threshold to segment coefficients (minutes of directional wait),,10, +66,walkThresh,Walk threshold to segment coefficients (miles),,1.5, +67,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333331, +68,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666663, +69,walkSpeed,Walk speed (miles per hour),,3, +70,bikeThresh,Bike threshold to segment coefficients (miles),,6, +71,bikeSpeed,Bike speed (miles per hour),,12, +72,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +73,indivTour,Individual tour,tourCategoryJoint==0,1, +74,upperEA,Upper limit on time of day for the Early morning time period,,5, +75,upperAM,Upper limit on time of day for the AM peak time period,,9, +76,upperMD,Upper limit on time of day for the Midday time period,,14, +77,upperPM,Upper limit on time of day for the PM peak time period,,18, +78,upperEV,Upper limit on time of day for the Evening time period,,21, +79,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +80,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +81,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +82,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +83,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +84,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +85,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +86,walkTransitPossible,Walk to transit is possible,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +87,driveTransitPossible,Drive to transit is possible,,walkTransitDest*(1-zeroAutoHh), +88,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +89,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +90,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +91,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +92,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA)*(timeOutbound<=upperAM),2, +109,outPeriod,Outbound period index -- 3 if Midday outbound period,(timeOutbound>upperAM)*(timeOutbound<=upperMD),3, +110,outPeriod,Outbound period index -- 4 if PM Peak outbound period,(timeOutbound>upperMD)*(timeOutbound<=upperPM),4, +111,outPeriod,Outbound period index -- 5 if Evening Peak outbound period,(timeOutbound>upperPM)*(timeOutbound<=upperEV),5, +112,outPeriod,Outbound period index -- 6 if Night outbound period,(timeOutbound>upperEV),6, +113,inPeriod,Inbound period index -- 1 if Early morning inbound period,,"if(timeInbound<=upperEA,1,0)", +114,inPeriod,Inbound period index -- 2 if AM Peak inbound period,inPeriod==0,"if(timeInbound>upperEA,1,0)*if(timeInbound<=upperAM,2,0)", +115,inPeriod,Inbound period index -- 3 if Midday inbound period,inPeriod==0,"if(timeInbound>upperAM,1,0)*if(timeInbound<=upperMD,3,0)", +116,inPeriod,Inbound period index -- 4 if PM Peak inbound period,inPeriod==0,"if(timeInbound>upperMD,1,0)*if(timeInbound<=upperPM,4,0)", +117,inPeriod,Inbound period index -- 5 if Evening inbound period,inPeriod==0,"if(timeInbound>upperPM,1,0)*if(timeInbound<=upperEV,4,0)", +118,inPeriod,Inbound period index -- 6 if Night inbound period,inPeriod==0,"if(timeInbound>upperNT,6,0)", +119,sovOut,SOV outbound mode is available,,"if(SOV_TIME[outPeriod]>0,1,0)",od +120,sovIn,SOV inbound mode is available,,"if(SOV_TIME[inPeriod]>0,1,0)",do +121,sovAvailable,SOV mode is available,sovOut,sovIn, +122,hov2Out,HOV 2 outbound mode is available,,"if(HOV2_TIME[outPeriod]>0,1,0)",od +123,hov2In,HOV 2 inbound mode is available,,"if(HOV2_TIME[inPeriod]>0,1,0)",do +124,hov2Available,HOV 2 mode is available,hov2Out,hov2In, +125,hov3Out,HOV 3+ outbound mode is available,,"if(HOV3_TIME[outPeriod]>0,1,0)",od +126,hov3In,HOV 3+ inbound mode is available,,"if(HOV3_TIME[inPeriod]>0,1,0)",do +127,hov3Available,HOV 3+ mode is available,hov3Out,hov3In, +128,walkTransitAvailable,Walk transit mode is available for the tour,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_WLK_TOTIVT[inPeriod]/100>0),"od,do,od,do" +129,pnrTransitAvailable,Park and ride transit mode is available for the tour,driveTransitPossible,(PNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_PNR_TOTIVT[inPeriod]/100>0),"od,do" +130,knrTransitAvailable,Kiss and ride transit mode is available for the tour,driveTransitPossible,(KNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_KNR_TOTIVT[inPeriod]/100>0),"od,do,od,do" +131,,Drive alone - Unavailable,,sovAvailable==0, +132,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +133,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16)*(useAV==0),1, +134,,Drive alone - Unavailable for joint tours,tourCategoryJoint==1,1, +135,,Drive alone - Unavailable if didn't drive to work,tourCategorySubtour==1,workTourModeIsSOV==0, +136,,Drive alone - In-vehicle time,sovAvailable,c_ivt*(SOV_TIME[outPeriod]+SOV_TIME[inPeriod])*autoIVTFactor,"od,do" +137,,Drive alone - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +138,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*(SOV_DIST[outPeriod]+SOV_DIST[inPeriod]))*autoCPMFactor,"od,do" +139,,Drive alone - Parking cost,sovAvailable,c_cost*dailyParkingCost*autoParkingCostFactor, +140,,Drive alone - Bridge toll,sovAvailable,c_cost*(SOV_BTOLL[outPeriod]+SOV_BTOLL[inPeriod]),"od,do" +141,,Drive alone - Value toll,sovAvailable,"c_cost*(SOV_VTOLL[outPeriod]+SOV_VTOLL[inPeriod])*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +142,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +143,,Shared ride 2 - Unavailable,,hov2Available==0, +144,,Shared ride 2 - Unavailable based on party size,tourCategoryJoint==1,numberOfParticipantsInJointTour>2, +145,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*(HOV2_TIME[outPeriod]+HOV2_TIME[inPeriod])*autoIVTFactor,"od,do" +146,,Shared ride 2 - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +147,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*(HOV2_DIST[outPeriod]+HOV2_DIST[inPeriod]))*autoCPMFactor,"od,do" +148,,Shared ride 2 - Parking cost,hov2Available,c_cost*dailyParkingCost/costShareSr2*autoParkingCostFactor, +149,,Shared ride 2 - Bridge toll,hov2Available,c_cost*(HOV2_BTOLL[outPeriod]+HOV2_BTOLL[inPeriod])/costShareSr2,"od,do" +150,,Shared ride 2 - Value toll,hov2Available,"c_cost*(HOV2_VTOLL[outPeriod]+HOV2_VTOLL[inPeriod])/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +151,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +152,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +153,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +154,,Shared ride 3+ - Unavailable,,hov3Available==0, +155,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*(HOV3_TIME[outPeriod]+HOV3_TIME[inPeriod])*autoIVTFactor,"od,do" +156,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +157,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*(HOV3_DIST[outPeriod]+HOV3_DIST[inPeriod]))*autoCPMFactor,"od,do" +158,,Shared ride 3+ - Parking cost,hov3Available,c_cost*dailyParkingCost/costShareSr3*autoParkingCostFactor, +159,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*(HOV3_BTOLL[outPeriod]+HOV3_BTOLL[inPeriod])/costShareSr3,"od,do" +160,,Shared ride 3+ - Value toll,hov3Available,"c_cost*(HOV3_VTOLL[outPeriod]+HOV3_VTOLL[inPeriod])/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +161,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +162,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +163,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +164,,Walk - Time up to 2 miles,,"c_walkTimeShort*min((DISTWALK+DISTWALK)*60/walkSpeed, walkThresh*2*60/walkSpeed)","od,do" +165,,Walk - Time beyond 2 of a miles,,"c_walkTimeLong*max((DISTWALK+DISTWALK)*60/walkSpeed - walkThresh*2*60/walkSpeed, 0)","od,do" +166,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +167,,Walk - Topology,,c_topology_walk*destTopology, +168,,Bike - Unavailable if didn't bike to work,(tourCategorySubtour==1)*(workTourModeIsBike==0),1, +169,,Bike - Time up to 2 miles,,"c_bikeTimeShort*min((DISTBIKE+DISTBIKE)*60/bikeSpeed, bikeThresh*2*60/bikeSpeed)","od,do" +170,,Bike - Time beyond 2 of a miles,,"c_bikeTimeLong*max((DISTBIKE+DISTBIKE)*60/bikeSpeed - bikeThresh*2*60/bikeSpeed, 0)","od,do" +171,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +172,,Bike - Topology,,c_topology_bike*destTopology, +173,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +174,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*(WLK_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_WLK_IVT_LOC[inPeriod]/100),"od,do" +175,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*(WLK_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_WLK_IVT_EXP[inPeriod]/100),"od,do" +176,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*(WLK_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_WLK_IVT_LRT[inPeriod]/100),"od,do" +177,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*(WLK_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_WLK_IVT_FRY[inPeriod]/100),"od,do" +178,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*(WLK_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_WLK_IVT_HVY[inPeriod]/100),"od,do" +179,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*(WLK_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_WLK_IVT_COM[inPeriod]/100),"od,do" +180,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiwait*(min(WLK_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_WLK_IWAIT[inPeriod]/100,waitThresh))","od,do" +181,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiwait*(max(WLK_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_WLK_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +182,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*(WLK_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_WLK_XWAIT[inPeriod]/100),"od,do" +183,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*(max(WLK_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_WLK_BOARDS[inPeriod]-1,0))","od,do" +184,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*(originWalkTime+originWalkTime), +185,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*(destinationWalkTime+destinationWalkTime), +186,,Walk to Transit - Walk other time,walkCommuterAvailable,c_waux*(WLK_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_WLK_WAUX[inPeriod]/100),"od,do" +187,,Walk to Transit - Fare,walkCommuterAvailable,"c_cost*(WLK_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_WLK_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))","od,do" +188,,Walk to Transit - Destination zone densityIndex,walkCommuterAvailable,c_densityIndex*densityIndex, +189,,Walk to Transit - Topology,walkCommuterAvailable,c_topology_trn*destTopology, +190,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +191,,Park and ride Transit - Unavailable,,pnrTransitAvailable==0, +192,,Park and ride Transit - Unavailable for zero auto households,autos==0,1, +193,,Park and ride Transit - Unavailable for persons less than 16,age<16,1, +194,,Park and ride Transit - In-vehicle time on local bus,pnrTransitAvailable,c_ivt*(PNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_PNR_IVT_LOC[inPeriod]/100),"od,do" +195,,Park and ride Transit - In-vehicle time on express bus,pnrTransitAvailable,c_ivt_exp*(PNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_PNR_IVT_EXP[inPeriod]/100),"od,do" +196,,Park and ride Transit - In-vehicle time on light rail,pnrTransitAvailable,c_ivt_lrt*(PNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_PNR_IVT_LRT[inPeriod]/100),"od,do" +197,,Park and ride Transit - In-vehicle time on ferry,pnrTransitAvailable,c_ivt_ferry*(PNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_PNR_IVT_FRY[inPeriod]/100),"od,do" +198,,Park and ride Transit - In-vehicle time on heavy rail,pnrTransitAvailable,c_ivt_hvy*(PNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_PNR_IVT_HVY[inPeriod]/100),"od,do" +199,,Park and ride Transit - In-vehicle time on commuter rail,pnrTransitAvailable,c_ivt_com*(PNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_PNR_IVT_COM[inPeriod]/100),"od,do" +200,,Park and ride Transit - Short iwait time,pnrTransitAvailable,"c_shortiwait*(min(PNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_PNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +201,,Park and ride Transit - Long iwait time,pnrTransitAvailable,"c_longiwait*(max(PNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_PNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +202,,Park and ride Transit - transfer wait time,pnrTransitAvailable,c_xwait*(PNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_PNR_XWAIT[inPeriod]/100),"od,do" +203,,Park and ride Transit - number of transfers,pnrTransitAvailable,"c_xfers_drv*(max(PNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_PNR_BOARDS[inPeriod]-1,0))","od,do" +204,,Park and ride Transit - Drive time,pnrTransitAvailable,c_dtim*(PNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_PNR_DTIM[inPeriod]/100),"od,do" +205,,Park and ride Transit - Walk access time (at attraction end),pnrTransitAvailable,c_wacc*(destinationWalkTime), +206,,Park and ride Transit - Walk egress time (at attraction end),pnrTransitAvailable,c_wegr*(destinationWalkTime), +207,,Park and ride Transit - Walk other time,pnrTransitAvailable,c_waux*(PNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_PNR_WAUX[inPeriod]/100),"od,do" +208,,Park and ride Transit - Fare and operating cost,pnrTransitAvailable,"c_cost*((PNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_PNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +209,,Park and ride Transit - Ratio of drive access distance to OD distance,pnrTransitAvailable,c_dacc_ratio*((PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +210,,Park and ride Transit - Destination zone densityIndex,pnrTransitAvailable,c_densityIndex*densityIndex, +211,,Park and ride Transit - Topology,pnrTransitAvailable,c_topology_trn*destTopology, +212,,Park and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Kiss and ride Transit - Unavailable,,knrTransitAvailable==0, +214,,Kiss and ride Transit - Unavailable for zero auto households,autos==0,1, +215,,Kiss and ride Transit - Unavailable for persons less than 16,age<16,1, +216,,Kiss and ride Transit - In-vehicle time on local bus,knrTransitAvailable,c_ivt*(KNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_KNR_IVT_LOC[inPeriod]/100),"od,do" +217,,Kiss and ride Transit - In-vehicle time on express bus,knrTransitAvailable,c_ivt_exp*(KNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_KNR_IVT_EXP[inPeriod]/100),"od,do" +218,,Kiss and ride Transit - In-vehicle time on light rail,knrTransitAvailable,c_ivt_lrt*(KNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_KNR_IVT_LRT[inPeriod]/100),"od,do" +219,,Kiss and ride Transit - In-vehicle time on ferry,knrTransitAvailable,c_ivt_ferry*(KNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_KNR_IVT_FRY[inPeriod]/100),"od,do" +220,,Kiss and ride Transit - In-vehicle time on heavy rail,knrTransitAvailable,c_ivt_hvy*(KNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_KNR_IVT_HVY[inPeriod]/100),"od,do" +221,,Kiss and ride Transit - In-vehicle time on commuter rail,knrTransitAvailable,c_ivt_com*(KNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_KNR_IVT_COM[inPeriod]/100),"od,do" +222,,Kiss and ride Transit - Short iwait time,knrTransitAvailable,"c_shortiwait*(min(KNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_KNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +223,,Kiss and ride Transit - Long iwait time,knrTransitAvailable,"c_longiwait*(max(KNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_KNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +224,,Kiss and ride Transit - transfer wait time,knrTransitAvailable,c_xwait*(KNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_KNR_XWAIT[inPeriod]/100),"od,do" +225,,Kiss and ride Transit - number of transfers,knrTransitAvailable,"c_xfers_drv*(max(KNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_KNR_BOARDS[inPeriod]-1,0))","od,do" +226,,Kiss and ride Transit - Drive time,knrTransitAvailable,c_dtim*(KNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_KNR_DTIM[inPeriod]/100),"od,do" +227,,Kiss and ride Transit - Walk access time (at attraction end),knrTransitAvailable,c_wacc*(destinationWalkTime), +228,,Kiss and ride Transit - Walk egress time (at attraction end),knrTransitAvailable,c_wegr*(destinationWalkTime), +229,,Kiss and ride Transit - Walk other time,knrTransitAvailable,c_waux*(KNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_KNR_WAUX[inPeriod]/100),"od,do" +230,,Kiss and ride Transit - Fare and operating cost,knrTransitAvailable,"c_cost*((KNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_KNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +231,,Kiss and ride Transit - Ratio of drive access distance to OD distance,knrTransitAvailable,c_dacc_ratio*((KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +232,,Kiss and ride Transit - Destination zone densityIndex,knrTransitAvailable,c_densityIndex*densityIndex, +233,,Kiss and ride Transit - Topology,knrTransitAvailable,c_topology_trn*destTopology, +234,,Kiss and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +235,,Ride hail - In-vehicle time,,c_ivt*(HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]),"od,do" +236,,Ride hail - Wait time,,c_ivt*1.5*totalWaitTaxi, +237,,Ride hail - Tolls,,c_cost*(HOV2TOLL_VTOLL[outPeriod] + HOV2TOLL_VTOLL[inPeriod]),"od,do" +238,,Ride hail - Bridge toll,,c_cost*(HOV2TOLL_BTOLL[outPeriod] + HOV2TOLL_BTOLL[inPeriod]),"od,do" +239,,Ride hail - Fare,,c_cost*(costInitialTaxi*2 + (HOV2TOLL_DIST[outPeriod]+HOV2TOLL_DIST[inPeriod]) * costPerMileTaxi + (HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]) * costPerMinuteTaxi )*100,"od,do,od,do" +240,,Walk - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,6.3993796174715216, +241,,Walk - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,2.1051643912402112, +242,,Walk - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.44192395753720504, +243,,Bike - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,9.8734445243454871E-2, +244,,Bike - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.50129212432596892, +245,,Bike - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.2214003392579784, +246,,Shared ride 2 - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,1.8134281227050912, +247,,Shared ride 2 - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.43366687392471565, +248,,Shared ride 2 - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.1937681905496664, +249,,Shared ride 3+ - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,2.5421558481015238, +250,,Shared ride 3+ - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,1.4115980067948612, +251,,Shared ride 3+ - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-0.54465321234502873, +252,,Walk to Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,6.3632595428081382, +253,,Walk to Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,2.7950200957900235, +254,,Walk to Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-0.34266236588790688, +255,,Park and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +256,,Park and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437599, +257,,Park and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656534, +258,,Kiss and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +259,,Kiss and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437599, +260,,Kiss and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656534, +261,,Taxi - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-7, +262,,Taxi - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.28184039999534261, +263,,Taxi - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5669593489578419, +264,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-2.3505204046613182, +265,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6817039430815885, +266,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.787472888668602, +267,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.4556271225409212, +268,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-8.0967498335842354, +269,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.5927750116185742, +270,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.1279064343597331, +271,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,1.7942435719105556, +272,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,0.36718430827121318, +273,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.376360157302887, +274,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-2.4868225477082002, +275,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-2.3150366951619445, +276,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-1.5252089464233847, +277,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-6.2606050432642473, +278,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.4530509448000402, +279,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,0, +280,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6369494640971141, +281,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.0277331325007699, +282,,Taxi - Alternative-specific constant - Zero auto - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.5792091796996726, +283,,Taxi - Alternative-specific constant - Auto deficient - Joint Tours,tourCategoryJoint*autoDeficientHh,-9.8157175798197525, +284,,Taxi - Alternative-specific constant - Auto sufficient - Joint Tours,tourCategoryJoint*autoSufficientHh,-11.709876913156872, +285,,Walk to Transit - to CBD dummy,cbdDummy,0, +286,,Drive to Transit - to CBD dummy,cbdDummy,0, +287,,Walk to Transit - to San Francisco dummy,destCounty==1,0.67200000000000004, +288,,Drive to Transit - to San Francisco dummy,destCounty==1,0.33600000000000002, +289,,Walk to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0, +290,,Drive to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0, +291,,Walk to Transit - from San Francisco dummy,origCounty==1,0, +292,,Drive to Transit - from San Francisco dummy,origCounty==1,0, +293,,Drive to Transit - distance penalty,,"min(0,c_drvtrn_distpen_0*(1-DIST/c_drvtrn_distpen_max))",od +294,,Walk not available for long distances,DISTWALK>3,1,od +295,,Bike not available for long distances,DISTBIKE>8,1,od diff --git a/utilities/make-mode-choice/update-shopping.csv b/utilities/make-mode-choice/update-shopping.csv new file mode 100644 index 000000000..3d0b53221 --- /dev/null +++ b/utilities/make-mode-choice/update-shopping.csv @@ -0,0 +1,296 @@ +row_number,token,description,filter,formula,index +1,terminalTime,Terminal time (minutes),,TERMINAL,z +2,freeParkingAllowed,"Switch: if 1, travelers assumed to have subsidized parking to not pay the parking fee",,0, +3,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed,@freeParking, +4,hourlyParkingCost,Peak hourly parking cost,freeParkingAvailable==2,PRKCST,z +5,destTopology,Destination zone topology,,TOPOLOGY,z +6,destCounty,Destination County,,COUNTY,z +7,origCounty,Origin County,,@origCounty, +8,valueOfTime,Value of Time,,@valueOfTime, +9,autos,Household autos,,@autos, +10,workers,Household workers,,@workers, +11,hhSize,Household size (number of persons),,@hhSize, +12,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +13,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +14,age,Person age,,@age, +15,timeOutbound,Time of day for outbound trip,,@timeOutbound, +16,timeInbound,Time of day for inbound trip,,@timeInbound, +17,tourDuration,"Tour duration, in hours",freeParkingAvailable==2,@tourDuration, +18,tourCategoryJoint,Joint tour,,@tourCategoryJoint, +19,numberOfParticipantsInJointTour,Number of participants in joint tour,tourCategoryJoint,@numberOfParticipantsInJointTour, +20,tourCategorySubtour,Work based subtour,,@tourCategorySubtour, +21,workTourModeIsSOV,Mode for work tour is SOV,tourCategorySubtour,@workTourModeIsSOV, +22,workTourModeIsBike,Mode for work tour is Bike,tourCategorySubtour,@workTourModeIsBike, +23,destZoneAreaType,Area type,,@areaType, +24,originDensityIndex,Origin zone density index,,@originDensityIndex, +25,densityIndex,Destination zone density index (hhdens*empdens)/(hhdens+empdens),,@densityIndex, +26,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +27,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +28,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +29,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +30,c_ivt,In-vehicle time coefficient,,-1.7500000000000002E-2, +31,c_ivt_lrt,In-vehicle time coefficient on light rail,,0.90 * c_ivt, +32,c_ivt_ferry,In-vehicle time coefficient on ferry,,0.80 * c_ivt, +33,c_ivt_exp,In-vehicle time coefficient on express bus,,1.00 * c_ivt, +34,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,0.80 * c_ivt, +35,c_ivt_com,In-vehicle time coefficient on commuter rail,,0.70 * c_ivt, +36,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,2.00 * c_ivt, +37,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,10.00 * c_ivt, +38,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,4.00 * c_ivt, +39,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,20.00 * c_ivt, +40,c_cost,"Cost coefficient, derived from Value of Time",,(0.60 * c_ivt) / valueOfTime, +41,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,2.00 * c_ivt, +42,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,1.00 * c_ivt, +43,c_wacc,Walk access time coefficient,,2.00 * c_ivt, +44,c_wegr,Walk egress time coefficient,,2.00 * c_ivt, +45,c_waux,Walk auxilliary time coefficient,,2.00 * c_ivt, +46,c_dtim,Drive access time coefficient,,2.00 * c_ivt, +47,c_xwait,Transfer wait time coefficient,,2.00 * c_ivt, +48,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +49,c_xfers_wlk,"Transfer penalty, walk",,30.00 * c_ivt, +50,c_xfers_drv,"Transfer penalty, drive-transit",,40.00 * c_ivt, +51,c_drvtrn_distpen_0,Drive-transit OD distance penalty at zero miles,,270.00 * c_ivt, +52,c_drvtrn_distpen_max,Drive-transit OD distance penalty miles at phase-out,,15, +53,c_topology_walk,"Topology dummy coefficient, applied to walk",,15.00 * c_ivt, +54,c_topology_bike,"Topology dummy coefficient, applied to bike",,20.00 * c_ivt, +55,c_topology_trn,"Topology dummy coefficient, applied to transit",,2.20 * c_ivt, +56,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,-0.20 * c_ivt, +57,c_age1619_da,Age 16-19--Drive Alone,,0, +58,c_age010_trn,Age 0-10--Transit,,0, +59,c_age16p_sr,Age 16+ -- Shared Ride,,78.05714286 * c_ivt, +60,c_hhsize1_sr,Household Size 1--Shared Ride,,0, +61,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +62,costPerMile,Auto operating cost per mile,,18.29, +63,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +64,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +65,waitThresh,Wait time threshold to segment coefficients (minutes of directional wait),,10, +66,walkThresh,Walk threshold to segment coefficients (miles),,1.5, +67,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333331, +68,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666663, +69,walkSpeed,Walk speed (miles per hour),,3, +70,bikeThresh,Bike threshold to segment coefficients (miles),,6, +71,bikeSpeed,Bike speed (miles per hour),,12, +72,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +73,indivTour,Individual tour,tourCategoryJoint==0,1, +74,upperEA,Upper limit on time of day for the Early morning time period,,5, +75,upperAM,Upper limit on time of day for the AM peak time period,,9, +76,upperMD,Upper limit on time of day for the Midday time period,,14, +77,upperPM,Upper limit on time of day for the PM peak time period,,18, +78,upperEV,Upper limit on time of day for the Evening time period,,21, +79,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +80,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +81,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +82,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +83,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +84,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +85,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +86,walkTransitPossible,Walk to transit is possible,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +87,driveTransitPossible,Drive to transit is possible,,walkTransitDest*(1-zeroAutoHh), +88,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +89,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +90,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +91,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +92,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA)*(timeOutbound<=upperAM),2, +109,outPeriod,Outbound period index -- 3 if Midday outbound period,(timeOutbound>upperAM)*(timeOutbound<=upperMD),3, +110,outPeriod,Outbound period index -- 4 if PM Peak outbound period,(timeOutbound>upperMD)*(timeOutbound<=upperPM),4, +111,outPeriod,Outbound period index -- 5 if Evening Peak outbound period,(timeOutbound>upperPM)*(timeOutbound<=upperEV),5, +112,outPeriod,Outbound period index -- 6 if Night outbound period,(timeOutbound>upperEV),6, +113,inPeriod,Inbound period index -- 1 if Early morning inbound period,,"if(timeInbound<=upperEA,1,0)", +114,inPeriod,Inbound period index -- 2 if AM Peak inbound period,inPeriod==0,"if(timeInbound>upperEA,1,0)*if(timeInbound<=upperAM,2,0)", +115,inPeriod,Inbound period index -- 3 if Midday inbound period,inPeriod==0,"if(timeInbound>upperAM,1,0)*if(timeInbound<=upperMD,3,0)", +116,inPeriod,Inbound period index -- 4 if PM Peak inbound period,inPeriod==0,"if(timeInbound>upperMD,1,0)*if(timeInbound<=upperPM,4,0)", +117,inPeriod,Inbound period index -- 5 if Evening inbound period,inPeriod==0,"if(timeInbound>upperPM,1,0)*if(timeInbound<=upperEV,4,0)", +118,inPeriod,Inbound period index -- 6 if Night inbound period,inPeriod==0,"if(timeInbound>upperNT,6,0)", +119,sovOut,SOV outbound mode is available,,"if(SOV_TIME[outPeriod]>0,1,0)",od +120,sovIn,SOV inbound mode is available,,"if(SOV_TIME[inPeriod]>0,1,0)",do +121,sovAvailable,SOV mode is available,sovOut,sovIn, +122,hov2Out,HOV 2 outbound mode is available,,"if(HOV2_TIME[outPeriod]>0,1,0)",od +123,hov2In,HOV 2 inbound mode is available,,"if(HOV2_TIME[inPeriod]>0,1,0)",do +124,hov2Available,HOV 2 mode is available,hov2Out,hov2In, +125,hov3Out,HOV 3+ outbound mode is available,,"if(HOV3_TIME[outPeriod]>0,1,0)",od +126,hov3In,HOV 3+ inbound mode is available,,"if(HOV3_TIME[inPeriod]>0,1,0)",do +127,hov3Available,HOV 3+ mode is available,hov3Out,hov3In, +128,walkTransitAvailable,Walk transit mode is available for the tour,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_WLK_TOTIVT[inPeriod]/100>0),"od,do,od,do" +129,pnrTransitAvailable,Park and ride transit mode is available for the tour,driveTransitPossible,(PNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_PNR_TOTIVT[inPeriod]/100>0),"od,do" +130,knrTransitAvailable,Kiss and ride transit mode is available for the tour,driveTransitPossible,(KNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_KNR_TOTIVT[inPeriod]/100>0),"od,do,od,do" +131,,Drive alone - Unavailable,,sovAvailable==0, +132,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +133,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16)*(useAV==0),1, +134,,Drive alone - Unavailable for joint tours,tourCategoryJoint==1,1, +135,,Drive alone - Unavailable if didn't drive to work,tourCategorySubtour==1,workTourModeIsSOV==0, +136,,Drive alone - In-vehicle time,sovAvailable,c_ivt*(SOV_TIME[outPeriod]+SOV_TIME[inPeriod])*autoIVTFactor,"od,do" +137,,Drive alone - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +138,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*(SOV_DIST[outPeriod]+SOV_DIST[inPeriod]))*autoCPMFactor,"od,do" +139,,Drive alone - Parking cost,sovAvailable,c_cost*dailyParkingCost*autoParkingCostFactor, +140,,Drive alone - Bridge toll,sovAvailable,c_cost*(SOV_BTOLL[outPeriod]+SOV_BTOLL[inPeriod]),"od,do" +141,,Drive alone - Value toll,sovAvailable,"c_cost*(SOV_VTOLL[outPeriod]+SOV_VTOLL[inPeriod])*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +142,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +143,,Shared ride 2 - Unavailable,,hov2Available==0, +144,,Shared ride 2 - Unavailable based on party size,tourCategoryJoint==1,numberOfParticipantsInJointTour>2, +145,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*(HOV2_TIME[outPeriod]+HOV2_TIME[inPeriod])*autoIVTFactor,"od,do" +146,,Shared ride 2 - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +147,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*(HOV2_DIST[outPeriod]+HOV2_DIST[inPeriod]))*autoCPMFactor,"od,do" +148,,Shared ride 2 - Parking cost,hov2Available,c_cost*dailyParkingCost/costShareSr2*autoParkingCostFactor, +149,,Shared ride 2 - Bridge toll,hov2Available,c_cost*(HOV2_BTOLL[outPeriod]+HOV2_BTOLL[inPeriod])/costShareSr2,"od,do" +150,,Shared ride 2 - Value toll,hov2Available,"c_cost*(HOV2_VTOLL[outPeriod]+HOV2_VTOLL[inPeriod])/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +151,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +152,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +153,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +154,,Shared ride 3+ - Unavailable,,hov3Available==0, +155,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*(HOV3_TIME[outPeriod]+HOV3_TIME[inPeriod])*autoIVTFactor,"od,do" +156,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +157,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*(HOV3_DIST[outPeriod]+HOV3_DIST[inPeriod]))*autoCPMFactor,"od,do" +158,,Shared ride 3+ - Parking cost,hov3Available,c_cost*dailyParkingCost/costShareSr3*autoParkingCostFactor, +159,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*(HOV3_BTOLL[outPeriod]+HOV3_BTOLL[inPeriod])/costShareSr3,"od,do" +160,,Shared ride 3+ - Value toll,hov3Available,"c_cost*(HOV3_VTOLL[outPeriod]+HOV3_VTOLL[inPeriod])/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +161,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +162,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +163,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +164,,Walk - Time up to 2 miles,,"c_walkTimeShort*min((DISTWALK+DISTWALK)*60/walkSpeed, walkThresh*2*60/walkSpeed)","od,do" +165,,Walk - Time beyond 2 of a miles,,"c_walkTimeLong*max((DISTWALK+DISTWALK)*60/walkSpeed - walkThresh*2*60/walkSpeed, 0)","od,do" +166,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +167,,Walk - Topology,,c_topology_walk*destTopology, +168,,Bike - Unavailable if didn't bike to work,(tourCategorySubtour==1)*(workTourModeIsBike==0),1, +169,,Bike - Time up to 2 miles,,"c_bikeTimeShort*min((DISTBIKE+DISTBIKE)*60/bikeSpeed, bikeThresh*2*60/bikeSpeed)","od,do" +170,,Bike - Time beyond 2 of a miles,,"c_bikeTimeLong*max((DISTBIKE+DISTBIKE)*60/bikeSpeed - bikeThresh*2*60/bikeSpeed, 0)","od,do" +171,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +172,,Bike - Topology,,c_topology_bike*destTopology, +173,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +174,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*(WLK_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_WLK_IVT_LOC[inPeriod]/100),"od,do" +175,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*(WLK_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_WLK_IVT_EXP[inPeriod]/100),"od,do" +176,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*(WLK_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_WLK_IVT_LRT[inPeriod]/100),"od,do" +177,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*(WLK_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_WLK_IVT_FRY[inPeriod]/100),"od,do" +178,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*(WLK_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_WLK_IVT_HVY[inPeriod]/100),"od,do" +179,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*(WLK_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_WLK_IVT_COM[inPeriod]/100),"od,do" +180,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiwait*(min(WLK_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_WLK_IWAIT[inPeriod]/100,waitThresh))","od,do" +181,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiwait*(max(WLK_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_WLK_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +182,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*(WLK_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_WLK_XWAIT[inPeriod]/100),"od,do" +183,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*(max(WLK_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_WLK_BOARDS[inPeriod]-1,0))","od,do" +184,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*(originWalkTime+originWalkTime), +185,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*(destinationWalkTime+destinationWalkTime), +186,,Walk to Transit - Walk other time,walkCommuterAvailable,c_waux*(WLK_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_WLK_WAUX[inPeriod]/100),"od,do" +187,,Walk to Transit - Fare,walkCommuterAvailable,"c_cost*(WLK_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_WLK_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))","od,do" +188,,Walk to Transit - Destination zone densityIndex,walkCommuterAvailable,c_densityIndex*densityIndex, +189,,Walk to Transit - Topology,walkCommuterAvailable,c_topology_trn*destTopology, +190,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +191,,Park and ride Transit - Unavailable,,pnrTransitAvailable==0, +192,,Park and ride Transit - Unavailable for zero auto households,autos==0,1, +193,,Park and ride Transit - Unavailable for persons less than 16,age<16,1, +194,,Park and ride Transit - In-vehicle time on local bus,pnrTransitAvailable,c_ivt*(PNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_PNR_IVT_LOC[inPeriod]/100),"od,do" +195,,Park and ride Transit - In-vehicle time on express bus,pnrTransitAvailable,c_ivt_exp*(PNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_PNR_IVT_EXP[inPeriod]/100),"od,do" +196,,Park and ride Transit - In-vehicle time on light rail,pnrTransitAvailable,c_ivt_lrt*(PNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_PNR_IVT_LRT[inPeriod]/100),"od,do" +197,,Park and ride Transit - In-vehicle time on ferry,pnrTransitAvailable,c_ivt_ferry*(PNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_PNR_IVT_FRY[inPeriod]/100),"od,do" +198,,Park and ride Transit - In-vehicle time on heavy rail,pnrTransitAvailable,c_ivt_hvy*(PNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_PNR_IVT_HVY[inPeriod]/100),"od,do" +199,,Park and ride Transit - In-vehicle time on commuter rail,pnrTransitAvailable,c_ivt_com*(PNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_PNR_IVT_COM[inPeriod]/100),"od,do" +200,,Park and ride Transit - Short iwait time,pnrTransitAvailable,"c_shortiwait*(min(PNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_PNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +201,,Park and ride Transit - Long iwait time,pnrTransitAvailable,"c_longiwait*(max(PNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_PNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +202,,Park and ride Transit - transfer wait time,pnrTransitAvailable,c_xwait*(PNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_PNR_XWAIT[inPeriod]/100),"od,do" +203,,Park and ride Transit - number of transfers,pnrTransitAvailable,"c_xfers_drv*(max(PNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_PNR_BOARDS[inPeriod]-1,0))","od,do" +204,,Park and ride Transit - Drive time,pnrTransitAvailable,c_dtim*(PNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_PNR_DTIM[inPeriod]/100),"od,do" +205,,Park and ride Transit - Walk access time (at attraction end),pnrTransitAvailable,c_wacc*(destinationWalkTime), +206,,Park and ride Transit - Walk egress time (at attraction end),pnrTransitAvailable,c_wegr*(destinationWalkTime), +207,,Park and ride Transit - Walk other time,pnrTransitAvailable,c_waux*(PNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_PNR_WAUX[inPeriod]/100),"od,do" +208,,Park and ride Transit - Fare and operating cost,pnrTransitAvailable,"c_cost*((PNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_PNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +209,,Park and ride Transit - Ratio of drive access distance to OD distance,pnrTransitAvailable,c_dacc_ratio*((PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +210,,Park and ride Transit - Destination zone densityIndex,pnrTransitAvailable,c_densityIndex*densityIndex, +211,,Park and ride Transit - Topology,pnrTransitAvailable,c_topology_trn*destTopology, +212,,Park and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Kiss and ride Transit - Unavailable,,knrTransitAvailable==0, +214,,Kiss and ride Transit - Unavailable for zero auto households,autos==0,1, +215,,Kiss and ride Transit - Unavailable for persons less than 16,age<16,1, +216,,Kiss and ride Transit - In-vehicle time on local bus,knrTransitAvailable,c_ivt*(KNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_KNR_IVT_LOC[inPeriod]/100),"od,do" +217,,Kiss and ride Transit - In-vehicle time on express bus,knrTransitAvailable,c_ivt_exp*(KNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_KNR_IVT_EXP[inPeriod]/100),"od,do" +218,,Kiss and ride Transit - In-vehicle time on light rail,knrTransitAvailable,c_ivt_lrt*(KNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_KNR_IVT_LRT[inPeriod]/100),"od,do" +219,,Kiss and ride Transit - In-vehicle time on ferry,knrTransitAvailable,c_ivt_ferry*(KNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_KNR_IVT_FRY[inPeriod]/100),"od,do" +220,,Kiss and ride Transit - In-vehicle time on heavy rail,knrTransitAvailable,c_ivt_hvy*(KNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_KNR_IVT_HVY[inPeriod]/100),"od,do" +221,,Kiss and ride Transit - In-vehicle time on commuter rail,knrTransitAvailable,c_ivt_com*(KNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_KNR_IVT_COM[inPeriod]/100),"od,do" +222,,Kiss and ride Transit - Short iwait time,knrTransitAvailable,"c_shortiwait*(min(KNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_KNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +223,,Kiss and ride Transit - Long iwait time,knrTransitAvailable,"c_longiwait*(max(KNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_KNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +224,,Kiss and ride Transit - transfer wait time,knrTransitAvailable,c_xwait*(KNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_KNR_XWAIT[inPeriod]/100),"od,do" +225,,Kiss and ride Transit - number of transfers,knrTransitAvailable,"c_xfers_drv*(max(KNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_KNR_BOARDS[inPeriod]-1,0))","od,do" +226,,Kiss and ride Transit - Drive time,knrTransitAvailable,c_dtim*(KNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_KNR_DTIM[inPeriod]/100),"od,do" +227,,Kiss and ride Transit - Walk access time (at attraction end),knrTransitAvailable,c_wacc*(destinationWalkTime), +228,,Kiss and ride Transit - Walk egress time (at attraction end),knrTransitAvailable,c_wegr*(destinationWalkTime), +229,,Kiss and ride Transit - Walk other time,knrTransitAvailable,c_waux*(KNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_KNR_WAUX[inPeriod]/100),"od,do" +230,,Kiss and ride Transit - Fare and operating cost,knrTransitAvailable,"c_cost*((KNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_KNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +231,,Kiss and ride Transit - Ratio of drive access distance to OD distance,knrTransitAvailable,c_dacc_ratio*((KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +232,,Kiss and ride Transit - Destination zone densityIndex,knrTransitAvailable,c_densityIndex*densityIndex, +233,,Kiss and ride Transit - Topology,knrTransitAvailable,c_topology_trn*destTopology, +234,,Kiss and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +235,,Ride hail - In-vehicle time,,c_ivt*(HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]),"od,do" +236,,Ride hail - Wait time,,c_ivt*1.5*totalWaitTaxi, +237,,Ride hail - Tolls,,c_cost*(HOV2TOLL_VTOLL[outPeriod] + HOV2TOLL_VTOLL[inPeriod]),"od,do" +238,,Ride hail - Bridge toll,,c_cost*(HOV2TOLL_BTOLL[outPeriod] + HOV2TOLL_BTOLL[inPeriod]),"od,do" +239,,Ride hail - Fare,,c_cost*(costInitialTaxi*2 + (HOV2TOLL_DIST[outPeriod]+HOV2TOLL_DIST[inPeriod]) * costPerMileTaxi + (HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]) * costPerMinuteTaxi )*100,"od,do,od,do" +240,,Walk - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,1.577325865687816, +241,,Walk - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,2.5500710615922282, +242,,Walk - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,1.9431761346474106, +243,,Bike - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.7366540882323533E-2, +244,,Bike - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,6.2182802486794281E-2, +245,,Bike - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.4839293365657247, +246,,Shared ride 2 - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.4319945727473127, +247,,Shared ride 2 - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.88700714334679787, +248,,Shared ride 2 - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.70599617144003857, +249,,Shared ride 3+ - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.7958631667569529, +250,,Shared ride 3+ - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,1.0642861726414936, +251,,Shared ride 3+ - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.55909458214101626, +252,,Walk to Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,3.6358887906785036, +253,,Walk to Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.15690495264132095, +254,,Walk to Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.6595498119666381, +255,,Park and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +256,,Park and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437599, +257,,Park and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656534, +258,,Kiss and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +259,,Kiss and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437599, +260,,Kiss and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656534, +261,,Taxi - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0.37747431280016519, +262,,Taxi - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,-0.20343406377716192, +263,,Taxi - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.2797491205650484, +264,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-2.3505204046613182, +265,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6817039430815885, +266,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.787472888668602, +267,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.4556271225409212, +268,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-8.0967498335842354, +269,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.5927750116185742, +270,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.1279064343597331, +271,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,1.7942435719105556, +272,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,0.36718430827121318, +273,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.376360157302887, +274,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-2.4868225477082002, +275,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-2.3150366951619445, +276,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-1.5252089464233847, +277,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-6.2606050432642473, +278,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.4530509448000402, +279,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,0, +280,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6369494640971141, +281,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.0277331325007699, +282,,Taxi - Alternative-specific constant - Zero auto - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.5792091796996726, +283,,Taxi - Alternative-specific constant - Auto deficient - Joint Tours,tourCategoryJoint*autoDeficientHh,-9.8157175798197525, +284,,Taxi - Alternative-specific constant - Auto sufficient - Joint Tours,tourCategoryJoint*autoSufficientHh,-11.709876913156872, +285,,Walk to Transit - to CBD dummy,cbdDummy,0, +286,,Drive to Transit - to CBD dummy,cbdDummy,0, +287,,Walk to Transit - to San Francisco dummy,destCounty==1,1.2250000000000001, +288,,Drive to Transit - to San Francisco dummy,destCounty==1,1.05, +289,,Walk to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35000000000000003, +290,,Drive to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35000000000000003, +291,,Walk to Transit - from San Francisco dummy,origCounty==1,8.7500000000000008E-2, +292,,Drive to Transit - from San Francisco dummy,origCounty==1,1.2250000000000001, +293,,Drive to Transit - distance penalty,,"min(0,c_drvtrn_distpen_0*(1-DIST/c_drvtrn_distpen_max))",od +294,,Walk not available for long distances,DISTWALK>3,1,od +295,,Bike not available for long distances,DISTBIKE>8,1,od diff --git a/utilities/make-mode-choice/update-social.csv b/utilities/make-mode-choice/update-social.csv new file mode 100644 index 000000000..766934acc --- /dev/null +++ b/utilities/make-mode-choice/update-social.csv @@ -0,0 +1,296 @@ +row_number,token,description,filter,formula,index +1,terminalTime,Terminal time (minutes),,TERMINAL,z +2,freeParkingAllowed,"Switch: if 1, travelers assumed to have subsidized parking to not pay the parking fee",,0, +3,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed,@freeParking, +4,hourlyParkingCost,Off-peak hourly parking cost,freeParkingAvailable==2,OPRKCST,z +5,destTopology,Destination zone topology,,TOPOLOGY,z +6,destCounty,Destination County,,COUNTY,z +7,origCounty,Origin County,,@origCounty, +8,valueOfTime,Value of Time,,@valueOfTime, +9,autos,Household autos,,@autos, +10,workers,Household workers,,@workers, +11,hhSize,Household size (number of persons),,@hhSize, +12,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +13,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +14,age,Person age,,@age, +15,timeOutbound,Time of day for outbound trip,,@timeOutbound, +16,timeInbound,Time of day for inbound trip,,@timeInbound, +17,tourDuration,"Tour duration, in hours",freeParkingAvailable==2,@tourDuration, +18,tourCategoryJoint,Joint tour,,@tourCategoryJoint, +19,numberOfParticipantsInJointTour,Number of participants in joint tour,tourCategoryJoint,@numberOfParticipantsInJointTour, +20,tourCategorySubtour,Work based subtour,,@tourCategorySubtour, +21,workTourModeIsSOV,Mode for work tour is SOV,tourCategorySubtour,@workTourModeIsSOV, +22,workTourModeIsBike,Mode for work tour is Bike,tourCategorySubtour,@workTourModeIsBike, +23,destZoneAreaType,Area type,,@areaType, +24,originDensityIndex,Origin zone density index,,@originDensityIndex, +25,densityIndex,Destination zone density index (hhdens*empdens)/(hhdens+empdens),,@densityIndex, +26,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +27,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +28,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +29,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +30,c_ivt,In-vehicle time coefficient,,-1.7500000000000002E-2, +31,c_ivt_lrt,In-vehicle time coefficient on light rail,,0.90 * c_ivt, +32,c_ivt_ferry,In-vehicle time coefficient on ferry,,0.80 * c_ivt, +33,c_ivt_exp,In-vehicle time coefficient on express bus,,1.00 * c_ivt, +34,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,0.80 * c_ivt, +35,c_ivt_com,In-vehicle time coefficient on commuter rail,,0.70 * c_ivt, +36,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,2.00 * c_ivt, +37,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,10.00 * c_ivt, +38,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,4.00 * c_ivt, +39,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,20.00 * c_ivt, +40,c_cost,"Cost coefficient, derived from Value of Time",,(0.60 * c_ivt) / valueOfTime, +41,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,2.00 * c_ivt, +42,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,1.00 * c_ivt, +43,c_wacc,Walk access time coefficient,,2.00 * c_ivt, +44,c_wegr,Walk egress time coefficient,,2.00 * c_ivt, +45,c_waux,Walk auxilliary time coefficient,,2.00 * c_ivt, +46,c_dtim,Drive access time coefficient,,2.00 * c_ivt, +47,c_xwait,Transfer wait time coefficient,,2.00 * c_ivt, +48,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +49,c_xfers_wlk,"Transfer penalty, walk",,30.00 * c_ivt, +50,c_xfers_drv,"Transfer penalty, drive-transit",,40.00 * c_ivt, +51,c_drvtrn_distpen_0,Drive-transit OD distance penalty at zero miles,,270.00 * c_ivt, +52,c_drvtrn_distpen_max,Drive-transit OD distance penalty miles at phase-out,,15, +53,c_topology_walk,"Topology dummy coefficient, applied to walk",,15.00 * c_ivt, +54,c_topology_bike,"Topology dummy coefficient, applied to bike",,20.00 * c_ivt, +55,c_topology_trn,"Topology dummy coefficient, applied to transit",,2.20 * c_ivt, +56,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,, +57,c_age1619_da,Age 16-19--Drive Alone,,0, +58,c_age010_trn,Age 0-10--Transit,,0, +59,c_age16p_sr,Age 16+ -- Shared Ride,,78.05714286 * c_ivt, +60,c_hhsize1_sr,Household Size 1--Shared Ride,,0, +61,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +62,costPerMile,Auto operating cost per mile,,18.29, +63,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +64,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +65,waitThresh,Wait time threshold to segment coefficients (minutes of directional wait),,10, +66,walkThresh,Walk threshold to segment coefficients (miles),,1.5, +67,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333298, +68,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666596, +69,walkSpeed,Walk speed (miles per hour),,3, +70,bikeThresh,Bike threshold to segment coefficients (miles),,6, +71,bikeSpeed,Bike speed (miles per hour),,12, +72,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +73,indivTour,Individual tour,tourCategoryJoint==0,1, +74,upperEA,Upper limit on time of day for the Early morning time period,,5, +75,upperAM,Upper limit on time of day for the AM peak time period,,9, +76,upperMD,Upper limit on time of day for the Midday time period,,14, +77,upperPM,Upper limit on time of day for the PM peak time period,,18, +78,upperEV,Upper limit on time of day for the Evening time period,,21, +79,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +80,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +81,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +82,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +83,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +84,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +85,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +86,walkTransitPossible,Walk to transit is possible,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +87,driveTransitPossible,Drive to transit is possible,,walkTransitDest*(1-zeroAutoHh), +88,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +89,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +90,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +91,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +92,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA)*(timeOutbound<=upperAM),2, +109,outPeriod,Outbound period index -- 3 if Midday outbound period,(timeOutbound>upperAM)*(timeOutbound<=upperMD),3, +110,outPeriod,Outbound period index -- 4 if PM Peak outbound period,(timeOutbound>upperMD)*(timeOutbound<=upperPM),4, +111,outPeriod,Outbound period index -- 5 if Evening Peak outbound period,(timeOutbound>upperPM)*(timeOutbound<=upperEV),5, +112,outPeriod,Outbound period index -- 6 if Night outbound period,(timeOutbound>upperEV),6, +113,inPeriod,Inbound period index -- 1 if Early morning inbound period,,"if(timeInbound<=upperEA,1,0)", +114,inPeriod,Inbound period index -- 2 if AM Peak inbound period,inPeriod==0,"if(timeInbound>upperEA,1,0)*if(timeInbound<=upperAM,2,0)", +115,inPeriod,Inbound period index -- 3 if Midday inbound period,inPeriod==0,"if(timeInbound>upperAM,1,0)*if(timeInbound<=upperMD,3,0)", +116,inPeriod,Inbound period index -- 4 if PM Peak inbound period,inPeriod==0,"if(timeInbound>upperMD,1,0)*if(timeInbound<=upperPM,4,0)", +117,inPeriod,Inbound period index -- 5 if Evening inbound period,inPeriod==0,"if(timeInbound>upperPM,1,0)*if(timeInbound<=upperEV,4,0)", +118,inPeriod,Inbound period index -- 6 if Night inbound period,inPeriod==0,"if(timeInbound>upperNT,6,0)", +119,sovOut,SOV outbound mode is available,,"if(SOV_TIME[outPeriod]>0,1,0)",od +120,sovIn,SOV inbound mode is available,,"if(SOV_TIME[inPeriod]>0,1,0)",do +121,sovAvailable,SOV mode is available,sovOut,sovIn, +122,hov2Out,HOV 2 outbound mode is available,,"if(HOV2_TIME[outPeriod]>0,1,0)",od +123,hov2In,HOV 2 inbound mode is available,,"if(HOV2_TIME[inPeriod]>0,1,0)",do +124,hov2Available,HOV 2 mode is available,hov2Out,hov2In, +125,hov3Out,HOV 3+ outbound mode is available,,"if(HOV3_TIME[outPeriod]>0,1,0)",od +126,hov3In,HOV 3+ inbound mode is available,,"if(HOV3_TIME[inPeriod]>0,1,0)",do +127,hov3Available,HOV 3+ mode is available,hov3Out,hov3In, +128,walkTransitAvailable,Walk transit mode is available for the tour,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_WLK_TOTIVT[inPeriod]/100>0),"od,do,od,do" +129,pnrTransitAvailable,Park and ride transit mode is available for the tour,driveTransitPossible,(PNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_PNR_TOTIVT[inPeriod]/100>0),"od,do" +130,knrTransitAvailable,Kiss and ride transit mode is available for the tour,driveTransitPossible,(KNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_KNR_TOTIVT[inPeriod]/100>0),"od,do,od,do" +131,,Drive alone - Unavailable,,sovAvailable==0, +132,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +133,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16)*(useAV==0),1, +134,,Drive alone - Unavailable for joint tours,tourCategoryJoint==1,1, +135,,Drive alone - Unavailable if didn't drive to work,tourCategorySubtour==1,workTourModeIsSOV==0, +136,,Drive alone - In-vehicle time,sovAvailable,c_ivt*(SOV_TIME[outPeriod]+SOV_TIME[inPeriod])*autoIVTFactor,"od,do" +137,,Drive alone - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +138,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*(SOV_DIST[outPeriod]+SOV_DIST[inPeriod]))*autoCPMFactor,"od,do" +139,,Drive alone - Parking cost,sovAvailable,c_cost*dailyParkingCost*autoParkingCostFactor, +140,,Drive alone - Bridge toll,sovAvailable,c_cost*(SOV_BTOLL[outPeriod]+SOV_BTOLL[inPeriod]),"od,do" +141,,Drive alone - Value toll,sovAvailable,"c_cost*(SOV_VTOLL[outPeriod]+SOV_VTOLL[inPeriod])*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +142,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +143,,Shared ride 2 - Unavailable,,hov2Available==0, +144,,Shared ride 2 - Unavailable based on party size,tourCategoryJoint==1,numberOfParticipantsInJointTour>2, +145,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*(HOV2_TIME[outPeriod]+HOV2_TIME[inPeriod])*autoIVTFactor,"od,do" +146,,Shared ride 2 - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +147,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*(HOV2_DIST[outPeriod]+HOV2_DIST[inPeriod]))*autoCPMFactor,"od,do" +148,,Shared ride 2 - Parking cost,hov2Available,c_cost*dailyParkingCost/costShareSr2*autoParkingCostFactor, +149,,Shared ride 2 - Bridge toll,hov2Available,c_cost*(HOV2_BTOLL[outPeriod]+HOV2_BTOLL[inPeriod])/costShareSr2,"od,do" +150,,Shared ride 2 - Value toll,hov2Available,"c_cost*(HOV2_VTOLL[outPeriod]+HOV2_VTOLL[inPeriod])/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +151,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +152,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +153,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +154,,Shared ride 3+ - Unavailable,,hov3Available==0, +155,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*(HOV3_TIME[outPeriod]+HOV3_TIME[inPeriod])*autoIVTFactor,"od,do" +156,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +157,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*(HOV3_DIST[outPeriod]+HOV3_DIST[inPeriod]))*autoCPMFactor,"od,do" +158,,Shared ride 3+ - Parking cost,hov3Available,c_cost*dailyParkingCost/costShareSr3*autoParkingCostFactor, +159,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*(HOV3_BTOLL[outPeriod]+HOV3_BTOLL[inPeriod])/costShareSr3,"od,do" +160,,Shared ride 3+ - Value toll,hov3Available,"c_cost*(HOV3_VTOLL[outPeriod]+HOV3_VTOLL[inPeriod])/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +161,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +162,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +163,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +164,,Walk - Time up to 2 miles,,"c_walkTimeShort*min((DISTWALK+DISTWALK)*60/walkSpeed, walkThresh*2*60/walkSpeed)","od,do" +165,,Walk - Time beyond 2 of a miles,,"c_walkTimeLong*max((DISTWALK+DISTWALK)*60/walkSpeed - walkThresh*2*60/walkSpeed, 0)","od,do" +166,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +167,,Walk - Topology,,c_topology_walk*destTopology, +168,,Bike - Unavailable if didn't bike to work,(tourCategorySubtour==1)*(workTourModeIsBike==0),1, +169,,Bike - Time up to 2 miles,,"c_bikeTimeShort*min((DISTBIKE+DISTBIKE)*60/bikeSpeed, bikeThresh*2*60/bikeSpeed)","od,do" +170,,Bike - Time beyond 2 of a miles,,"c_bikeTimeLong*max((DISTBIKE+DISTBIKE)*60/bikeSpeed - bikeThresh*2*60/bikeSpeed, 0)","od,do" +171,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +172,,Bike - Topology,,c_topology_bike*destTopology, +173,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +174,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*(WLK_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_WLK_IVT_LOC[inPeriod]/100),"od,do" +175,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*(WLK_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_WLK_IVT_EXP[inPeriod]/100),"od,do" +176,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*(WLK_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_WLK_IVT_LRT[inPeriod]/100),"od,do" +177,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*(WLK_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_WLK_IVT_FRY[inPeriod]/100),"od,do" +178,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*(WLK_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_WLK_IVT_HVY[inPeriod]/100),"od,do" +179,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*(WLK_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_WLK_IVT_COM[inPeriod]/100),"od,do" +180,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiwait*(min(WLK_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_WLK_IWAIT[inPeriod]/100,waitThresh))","od,do" +181,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiwait*(max(WLK_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_WLK_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +182,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*(WLK_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_WLK_XWAIT[inPeriod]/100),"od,do" +183,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*(max(WLK_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_WLK_BOARDS[inPeriod]-1,0))","od,do" +184,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*(originWalkTime+originWalkTime), +185,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*(destinationWalkTime+destinationWalkTime), +186,,Walk to Transit - Walk other time,walkCommuterAvailable,c_waux*(WLK_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_WLK_WAUX[inPeriod]/100),"od,do" +187,,Walk to Transit - Fare,walkCommuterAvailable,"c_cost*(WLK_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_WLK_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))","od,do" +188,,Walk to Transit - Destination zone densityIndex,walkCommuterAvailable,c_densityIndex*densityIndex, +189,,Walk to Transit - Topology,walkCommuterAvailable,c_topology_trn*destTopology, +190,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +191,,Park and ride Transit - Unavailable,,pnrTransitAvailable==0, +192,,Park and ride Transit - Unavailable for zero auto households,autos==0,1, +193,,Park and ride Transit - Unavailable for persons less than 16,age<16,1, +194,,Park and ride Transit - In-vehicle time on local bus,pnrTransitAvailable,c_ivt*(PNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_PNR_IVT_LOC[inPeriod]/100),"od,do" +195,,Park and ride Transit - In-vehicle time on express bus,pnrTransitAvailable,c_ivt_exp*(PNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_PNR_IVT_EXP[inPeriod]/100),"od,do" +196,,Park and ride Transit - In-vehicle time on light rail,pnrTransitAvailable,c_ivt_lrt*(PNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_PNR_IVT_LRT[inPeriod]/100),"od,do" +197,,Park and ride Transit - In-vehicle time on ferry,pnrTransitAvailable,c_ivt_ferry*(PNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_PNR_IVT_FRY[inPeriod]/100),"od,do" +198,,Park and ride Transit - In-vehicle time on heavy rail,pnrTransitAvailable,c_ivt_hvy*(PNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_PNR_IVT_HVY[inPeriod]/100),"od,do" +199,,Park and ride Transit - In-vehicle time on commuter rail,pnrTransitAvailable,c_ivt_com*(PNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_PNR_IVT_COM[inPeriod]/100),"od,do" +200,,Park and ride Transit - Short iwait time,pnrTransitAvailable,"c_shortiwait*(min(PNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_PNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +201,,Park and ride Transit - Long iwait time,pnrTransitAvailable,"c_longiwait*(max(PNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_PNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +202,,Park and ride Transit - transfer wait time,pnrTransitAvailable,c_xwait*(PNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_PNR_XWAIT[inPeriod]/100),"od,do" +203,,Park and ride Transit - number of transfers,pnrTransitAvailable,"c_xfers_drv*(max(PNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_PNR_BOARDS[inPeriod]-1,0))","od,do" +204,,Park and ride Transit - Drive time,pnrTransitAvailable,c_dtim*(PNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_PNR_DTIM[inPeriod]/100),"od,do" +205,,Park and ride Transit - Walk access time (at attraction end),pnrTransitAvailable,c_wacc*(destinationWalkTime), +206,,Park and ride Transit - Walk egress time (at attraction end),pnrTransitAvailable,c_wegr*(destinationWalkTime), +207,,Park and ride Transit - Walk other time,pnrTransitAvailable,c_waux*(PNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_PNR_WAUX[inPeriod]/100),"od,do" +208,,Park and ride Transit - Fare and operating cost,pnrTransitAvailable,"c_cost*((PNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_PNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +209,,Park and ride Transit - Ratio of drive access distance to OD distance,pnrTransitAvailable,c_dacc_ratio*((PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +210,,Park and ride Transit - Destination zone densityIndex,pnrTransitAvailable,c_densityIndex*densityIndex, +211,,Park and ride Transit - Topology,pnrTransitAvailable,c_topology_trn*destTopology, +212,,Park and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Kiss and ride Transit - Unavailable,,knrTransitAvailable==0, +214,,Kiss and ride Transit - Unavailable for zero auto households,autos==0,1, +215,,Kiss and ride Transit - Unavailable for persons less than 16,age<16,1, +216,,Kiss and ride Transit - In-vehicle time on local bus,knrTransitAvailable,c_ivt*(KNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_KNR_IVT_LOC[inPeriod]/100),"od,do" +217,,Kiss and ride Transit - In-vehicle time on express bus,knrTransitAvailable,c_ivt_exp*(KNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_KNR_IVT_EXP[inPeriod]/100),"od,do" +218,,Kiss and ride Transit - In-vehicle time on light rail,knrTransitAvailable,c_ivt_lrt*(KNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_KNR_IVT_LRT[inPeriod]/100),"od,do" +219,,Kiss and ride Transit - In-vehicle time on ferry,knrTransitAvailable,c_ivt_ferry*(KNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_KNR_IVT_FRY[inPeriod]/100),"od,do" +220,,Kiss and ride Transit - In-vehicle time on heavy rail,knrTransitAvailable,c_ivt_hvy*(KNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_KNR_IVT_HVY[inPeriod]/100),"od,do" +221,,Kiss and ride Transit - In-vehicle time on commuter rail,knrTransitAvailable,c_ivt_com*(KNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_KNR_IVT_COM[inPeriod]/100),"od,do" +222,,Kiss and ride Transit - Short iwait time,knrTransitAvailable,"c_shortiwait*(min(KNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_KNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +223,,Kiss and ride Transit - Long iwait time,knrTransitAvailable,"c_longiwait*(max(KNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_KNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +224,,Kiss and ride Transit - transfer wait time,knrTransitAvailable,c_xwait*(KNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_KNR_XWAIT[inPeriod]/100),"od,do" +225,,Kiss and ride Transit - number of transfers,knrTransitAvailable,"c_xfers_drv*(max(KNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_KNR_BOARDS[inPeriod]-1,0))","od,do" +226,,Kiss and ride Transit - Drive time,knrTransitAvailable,c_dtim*(KNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_KNR_DTIM[inPeriod]/100),"od,do" +227,,Kiss and ride Transit - Walk access time (at attraction end),knrTransitAvailable,c_wacc*(destinationWalkTime), +228,,Kiss and ride Transit - Walk egress time (at attraction end),knrTransitAvailable,c_wegr*(destinationWalkTime), +229,,Kiss and ride Transit - Walk other time,knrTransitAvailable,c_waux*(KNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_KNR_WAUX[inPeriod]/100),"od,do" +230,,Kiss and ride Transit - Fare and operating cost,knrTransitAvailable,"c_cost*((KNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_KNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +231,,Kiss and ride Transit - Ratio of drive access distance to OD distance,knrTransitAvailable,c_dacc_ratio*((KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +232,,Kiss and ride Transit - Destination zone densityIndex,knrTransitAvailable,c_densityIndex*densityIndex, +233,,Kiss and ride Transit - Topology,knrTransitAvailable,c_topology_trn*destTopology, +234,,Kiss and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +235,,Ride hail - In-vehicle time,,c_ivt*(HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]),"od,do" +236,,Ride hail - Wait time,,c_ivt*1.5*totalWaitTaxi, +237,,Ride hail - Tolls,,c_cost*(HOV2TOLL_VTOLL[outPeriod] + HOV2TOLL_VTOLL[inPeriod]),"od,do" +238,,Ride hail - Bridge toll,,c_cost*(HOV2TOLL_BTOLL[outPeriod] + HOV2TOLL_BTOLL[inPeriod]),"od,do" +239,,Ride hail - Fare,,c_cost*(costInitialTaxi*2 + (HOV2TOLL_DIST[outPeriod]+HOV2TOLL_DIST[inPeriod]) * costPerMileTaxi + (HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]) * costPerMinuteTaxi )*100,"od,do,od,do" +240,,Walk - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,1.57732586568781, +241,,Walk - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,2.5500710615922202, +242,,Walk - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,1.9431761346474099, +243,,Bike - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.7366540882323499E-2, +244,,Bike - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,6.2182802486794198E-2, +245,,Bike - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.48392933656572, +246,,Shared ride 2 - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.43199457274731, +247,,Shared ride 2 - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.88700714334679698, +248,,Shared ride 2 - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.70599617144003801, +249,,Shared ride 3+ - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.79586316675695, +250,,Shared ride 3+ - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,1.0642861726414901, +251,,Shared ride 3+ - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.55909458214101604, +252,,Walk to Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,3.6358887906785, +253,,Walk to Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.15690495264132001, +254,,Walk to Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.6595498119666301, +255,,Park and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +256,,Park and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437499, +257,,Park and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656499, +258,,Kiss and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +259,,Kiss and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437499, +260,,Kiss and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656499, +261,,Taxi - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0.37747431280016502, +262,,Taxi - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,-0.203434063777161, +263,,Taxi - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.27974912056504, +264,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-2.3505204046613102, +265,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6817039430815797, +266,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.7874728886686002, +267,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.4556271225409203, +268,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-8.0967498335842301, +269,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.5927750116185697, +270,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.12790643435973, +271,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,1.7942435719105501, +272,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,0.36718430827121301, +273,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.3763601573028801, +274,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-2.4868225477082002, +275,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-2.3150366951619401, +276,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-1.52520894642338, +277,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-6.2606050432642402, +278,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.4530509448000402, +279,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,0, +280,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6369494640971096, +281,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.0277331325007601, +282,,Taxi - Alternative-specific constant - Zero auto - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.5792091796996699, +283,,Taxi - Alternative-specific constant - Auto deficient - Joint Tours,tourCategoryJoint*autoDeficientHh,-9.8157175798197507, +284,,Taxi - Alternative-specific constant - Auto sufficient - Joint Tours,tourCategoryJoint*autoSufficientHh,-11.709876913156799, +285,,Walk to Transit - to CBD dummy,cbdDummy,0, +286,,Drive to Transit - to CBD dummy,cbdDummy,0, +287,,Walk to Transit - to San Francisco dummy,destCounty==1,1.05, +288,,Drive to Transit - to San Francisco dummy,destCounty==1,0.35000000000000003, +289,,Walk to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35, +290,,Drive to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35, +291,,Walk to Transit - from San Francisco dummy,origCounty==1,8.7499999999999994E-2, +292,,Drive to Transit - from San Francisco dummy,origCounty==1,1.3125000000000002, +293,,Drive to Transit - distance penalty,,"min(0,c_drvtrn_distpen_0*(1-DIST/c_drvtrn_distpen_max))",od +294,,Walk not available for long distances,DISTWALK>3,1,od +295,,Bike not available for long distances,DISTBIKE>8,1,od diff --git a/utilities/make-mode-choice/update-trip-eatout.csv b/utilities/make-mode-choice/update-trip-eatout.csv new file mode 100644 index 000000000..2f9fc8b1e --- /dev/null +++ b/utilities/make-mode-choice/update-trip-eatout.csv @@ -0,0 +1,323 @@ +row_number,token,description,filter,formula,index +1,c_ivt,In-vehicle time coefficient,,-2.7900000000000001E-2, +2,c_ivt_lrt,In-vehicle time coefficient on light rail,,-2.511E-2, +3,c_ivt_ferry,In-vehicle time coefficient on ferry,,-2.232E-2, +4,c_ivt_exp,In-vehicle time coefficient on express bus,,-1.7500000000000002E-2, +5,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,-2.232E-2, +6,c_ivt_com,In-vehicle time coefficient on commuter rail,,-2.232E-2, +7,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,-5.5800000000000002E-2, +8,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,-2.7900000000000001E-2, +9,c_wacc,Walk access time coefficient,,-5.5800000000000002E-2, +10,c_wegr,Walk egress time coefficient,,-5.5800000000000002E-2, +11,c_waux,Walk auxilliary time coefficient,,-5.5800000000000002E-2, +12,c_dtim,Drive access time coefficient,,-5.5800000000000002E-2, +13,c_xfers_wlk,"Transfer penalty, walk",,15.00 * c_ivt, +14,c_xfers_drv,"Transfer penalty, drive-transit",,20.00 * c_ivt, +15,c_xwait,Transfer wait time coefficient,,-5.5800000000000002E-2, +16,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,-5.5800000000000002E-2, +17,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,-0.27900000000000003, +18,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,-0.1116, +19,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,-0.55800000000000005, +20,vot,Value of Time,,@valueOfTime, +21,c_cost,"Cost coefficient, derived from Value of Time",,(0.6*c_ivt)/vot, +22,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +23,c_topology_walk,"Topology dummy coefficient, applied to walk",,-0.41849999999999998, +24,c_topology_bike,"Topology dummy coefficient, applied to bike",,-0.55800000000000005, +25,c_topology_trn,"Topology dummy coefficient, applied to transit",,-6.1379999999999997E-2, +26,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,5.5799999999999903E-3, +27,c_originDensityIndex,"Origin density index coef, applied to walk, bike, walk-transit",,1.6739999999999901E-2, +28,c_originDensityIndexMax,Maximum effect of origin density index,,0.41849999999999998, +29,c_age1619_da,Age 16-19--Drive Alone,,0, +30,c_age010_trn,Age 0-10--Transit,,0, +31,c_age16p_sr,Age 16+ -- Shared Ride,,0, +32,c_hhsize1_sr,Household Size 1--Shared Ride,,-0.73460000000000003, +33,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +34,freeParkingAllowed,Free parking is allowed for this purpose,,0, +35,costPerMile,Auto operating cost per mile,,18.29, +36,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +37,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +38,waitThresh,Wait time threshold to segment coefficients (minutes of wait),,10, +39,walkThresh,Walk threshold to segment coefficients (miles),,1, +40,walkSpeed,Walk speed (miles per hour),,3, +41,bikeThresh,Bike threshold to segment coefficients (miles),,6, +42,bikeSpeed,Bike speed (miles per hour),,12, +43,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333298, +44,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666596, +45,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +46,upperEA,Upper limit on time of day for the Early morning time period,,5, +47,upperAM,Upper limit on time of day for the AM peak time period,,9, +48,upperMD,Upper limit on time of day for the Midday time period,,14, +49,upperPM,Upper limit on time of day for the PM peak time period,,18, +50,upperEV,Upper limit on time of day for the Evening time period,,21, +51,autos,Household autos,,@autos, +52,workers,Household workers,,@workers, +53,hhSize,Household size (number of persons),,@hhSize, +54,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +55,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +56,age,Person age,,@age, +57,timeOfDay,Time of day for trip,,@tripTimeOfDay, +58,destZoneAreaType,Area type,,@areaType, +59,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +60,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +61,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +62,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +63,jointTour,Joint tour,,@tourCategoryJoint, +64,numberOfParticipantsInJointTour,Number of participants in joint tour,jointTour,@numberOfParticipantsInJointTour, +65,indivTour,Individual tour,jointTour==0,1, +66,subtour,Work based subtour,,@tourCategorySubtour, +67,tourMode,Primary tour mode integer code,,@tourMode, +68,tourModeIsSOV,Primary tour mode is auto,,@tourModeIsSOV, +69,tourModeIsAuto,Primary tour mode is auto,,@tourModeIsAuto, +70,tourModeIsWalk,Primary tour mode is walk,,@tourModeIsWalk, +71,tourModeIsBike,Primary tour mode is bike,,@tourModeIsBike, +72,tourModeIsWalkTransit,Primary tour mode is walk to transit,,@tourModeIsWalkTransit, +73,tourModeIsDriveTransit,Primary tour mode is drive to transit,,@tourModeIsDriveTransit, +74,tourModeIsRideHail,Primary tour mode is ride hailing,,@tourModeIsRideHail, +75,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed==1,@freeParking, +76,inbound,Stop is in inbound direction,,@tripIsInbound, +77,outbound,Stop is in outbound direction,,1-inbound, +78,stopIsFirst,First stop on half-tour,,@stopIsFirst, +79,stopIsLast,Last stop on half-tour,,@stopIsLast, +80,originTerminalTime,Terminal time (minutes) at origin,,@terminalTimeAtOrigin, +81,originTerminalTime,Terminal time (minutes) at origin--not counted at home,(inbound==0)*(stopIsFirst==1),0, +82,destTerminalTime,Terminal time (minutes) at destination,,@terminalTimeAtDestination, +83,destTerminalTime,Terminal time (minutes) at destination--not counted at home,(inbound==1)*(stopIsLast==1),0, +84,totalTerminalTime,Total Terminal time (minutes),,(originTerminalTime+destTerminalTime), +85,originHourlyParkingCost,Peak hourly parking cost at trip origin,,@hourlyPeakParkingCostAtOrigin, +86,destHourlyParkingCost,Peak hourly parking cost at trip destination,,@hourlyPeakParkingCostAtDestination, +87,tourDuration,Full duration of tour,,@tourDuration, +88,originDuration,Stop Duration if Origin of trip is at home,(inbound==0)*(stopIsFirst==1),0, +89,originDuration,Stop Duration if Origin of trip is at primary destination,(inbound==1)*(stopIsFirst==1)*(freeParkingAvailable==2),tourDuration, +90,originDuration,Stop Duration Origin of tirp is at an intermediate stop,stopIsFirst==0,1, +91,destDuration,Stop Duration if Destination of trip is at home,(inbound==1)*(stopIsLast==1),0, +92,destDuration,Stop Duration if Destination of trip is at primary destination,(inbound==0)*(stopIsLast==1)*(freeParkingAvailable==2),tourDuration, +93,destDuration,Stop Duration if Destination of trip is at an intermediate sotp,stopIsLast==0,1, +94,originParkingCost,Parking cost at trip origin,,originDuration*originHourlyParkingCost, +95,destParkingCost,Parking cost at trip destination,,destDuration*destHourlyParkingCost, +96,totalParkingCost,Total parking cost,,(originParkingCost+destParkingCost)/2, +97,tripTopology,Zone topology,,"if(inbound==1,@originTopology,@destinationTopology)", +98,originDensityIndex,Origin density index,,"if(inbound==1,@destinationDensityIndex,@originDensityIndex)", +99,originDensityApplied,Origin density index matters for this purpose,,1, +100,densityIndex,Zone density index (hhdens*empdens)/(hhdens+empdens),,"if(inbound==1,@originDensityIndex,@destinationDensityIndex)", +101,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +102,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +103,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +104,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +105,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +106,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA,1,0)*if(timeOfDay<=upperAM,2,0)", +130,tripPeriod,"trip departs in MD period, set index to 3",tripPeriod==0,"if(timeOfDay>upperAM,1,0)*if(timeOfDay<=upperMD,3,0)", +131,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperMD,1,0)*if(timeOfDay<=upperPM,4,0)", +132,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperPM,1,0)*if(timeOfDay<=upperNT,5,0)", +133,tripPeriod,"trip departs in EV period, set index to 5",tripPeriod==0,"if(timeOfDay>upperNT,6,0)", +134,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +135,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +136,walkTransitPossible,Walk to transit is available,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +137,driveTransitPossible,Drive to transit is available,outbound,walkTransitDest*(1-zeroAutoHh), +138,driveTransitPossible,Drive to transit is available,inbound,walkTransitOrig*(1-zeroAutoHh), +139,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +140,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +141,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +142,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +143,walk_dist,Walking distance,,DISTWALK,od +144,bike_dist,Biking distance,,DISTBIKE,od +145,sovAvailable,SOV mode is available,,"if(SOV_TIME[tripPeriod]>0,1,0)",od +146,hov2Available,HOV 2 mode is available,,"if(HOV2_TIME[tripPeriod]>0,1,0)",od +147,hov3Available,HOV 3+ mode is available,,"if(HOV3_TIME[tripPeriod]>0,1,0)",od +148,walkTransitAvailable,Walk local mode is available,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +149,pnrTransitAvailable,Park and ride transit is available for outbound tour,driveTransitPossible*(tourMode==7)*outbound,(PNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +150,pnrTransitAvailable,Park and ride transit is available for inbound tour,driveTransitPossible*(tourMode==7)*inbound,(WKL_TRN_PNR_TOTIVT[tripPeriod]/100>0),od +151,knrTransitAvailable,Kiss and ride transit is available for outbound tour,driveTransitPossible*(tourMode==8)*outbound,(KNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +152,knrTransitAvailable,Kiss and ride transit is available for inbound tour,driveTransitPossible*(tourMode==8)*inbound,(WKL_TRN_KNR_TOTIVT[tripPeriod]/100>0),od +153,,Drive alone - Unavailable,,sovAvailable==0, +154,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +155,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16) * (useAV==0),1, +156,,Drive alone - Unavailable for joint tours,jointTour==1,1, +157,,Drive alone - Unavailable if didn't drive to work,subtour==1,tourModeIsSOV==0, +158,,Drive alone - In-vehicle time,sovAvailable,c_ivt*SOV_TIME[tripPeriod]*autoIVTFactor,od +159,,Drive alone - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +160,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*SOV_DIST[tripPeriod])*autoCPMFactor,od +161,,Drive alone - Parking cost,sovAvailable,c_cost*totalParkingCost*autoParkingCostFactor, +162,,Drive alone - Bridge toll,sovAvailable,c_cost*SOV_BTOLL[tripPeriod],od +163,,Drive alone - Value toll,sovAvailable,"c_cost*SOV_VTOLL[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +164,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +165,,Shared ride 2 - Unavailable,,hov2Available==0, +166,,Shared ride 2 - Unavailable based on party size,jointTour==1,numberOfParticipantsInJointTour>2, +167,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*HOV2_TIME[tripPeriod]*autoIVTFactor,od +168,,Shared ride 2 - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +169,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*HOV2_DIST[tripPeriod])*autoCPMFactor,od +170,,Shared ride 2 - Parking cost,hov2Available,c_cost*totalParkingCost/costShareSr2*autoParkingCostFactor, +171,,Shared ride 2 - Bridge toll,hov2Available,c_cost*HOV2_BTOLL[tripPeriod]/costShareSr2,od +172,,Shared ride 2 - Value toll,hov2Available,"c_cost*HOV2_VTOLL[tripPeriod]/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +173,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +174,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +175,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +176,,Shared ride 3+ - Unavailable,,hov3Available==0, +177,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*HOV3_TIME[tripPeriod]*autoIVTFactor,od +178,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +179,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*HOV3_DIST[tripPeriod])*autoCPMFactor,od +180,,Shared ride 3+ - Parking cost,hov3Available,c_cost*totalParkingCost/costShareSr3*autoParkingCostFactor, +181,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*HOV3_BTOLL[tripPeriod]/costShareSr3,od +182,,Shared ride 3+ - Value toll,hov3Available,"c_cost*HOV3_VTOLL[tripPeriod]/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +183,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +184,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +185,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +186,,Walk - Time up to 1 mile,,"c_walkTimeShort*min(walk_dist*60/walkSpeed, walkThresh*60/walkSpeed)",od +187,,Walk - Time beyond 1 mile,,"c_walkTimeLong*max(walk_dist*60/walkSpeed - walkThresh*60/walkSpeed, 0)",od +188,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +189,,Walk - Topology,,c_topology_walk*tripTopology, +190,,Bike - Unavailable if didn't bike to work,(subtour==1)*(tourModeIsBike==0),1, +191,,Bike - Time up to 6 miles,,"c_bikeTimeShort*min(bike_dist*60/bikeSpeed, bikeThresh*60/bikeSpeed)",od +192,,Bike - Time beyond 6 of a miles,,"c_bikeTimeLong*max(bike_dist*60/bikeSpeed - bikeThresh*60/bikeSpeed, 0)",od +193,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +194,,Bike - Topology,,c_topology_bike*tripTopology, +195,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +196,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*WLK_TRN_WLK_IVT_LOC[tripPeriod]/100,od +197,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*WLK_TRN_WLK_IVT_EXP[tripPeriod]/100,od +198,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*WLK_TRN_WLK_IVT_LRT[tripPeriod]/100,od +199,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*WLK_TRN_WLK_IVT_FRY[tripPeriod]/100,od +200,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*WLK_TRN_WLK_IVT_HVY[tripPeriod]/100,od +201,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*WLK_TRN_WLK_IVT_COM[tripPeriod]/100,od +202,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiWait*min(WLK_TRN_WLKIWAIT[tripPeriod]/100,waitThresh)",od +203,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiWait*max(WLK_TRN_WLKIWAIT[tripPeriod]/100-waitThresh,0)",od +204,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*WLK_TRN_WLKXWAIT[tripPeriod]/100,od +205,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*max(WLK_TRN_WLKBOARDS[tripPeriod]-1,0)",od +206,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*originWalkTime, +207,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*destinationWalkTime, +208,,Walk to Transit - Walk other time,walkTransitAvailable,c_waux*WLK_TRN_WLKWAUX[tripPeriod]/100,od +209,,Walk to Transit - Fare,walkTransitAvailable,"c_cost*WLK_TRN_WLKFAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)",od +210,,Walk to Transit - Destination zone densityIndex,walkTransitAvailable,c_densityIndex*densityIndex, +211,,Walk to Transit - Topology,walkTransitAvailable,c_topology_trn*tripTopology, +212,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Park and Ride Transit - Unavailable (outbound),outbound,(pnrAvailableOutbound)==0, +214,,Park and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +215,,Park and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +216,,Park and Ride Transit - In-vehicle time (outbound),pnrAvailableOutbound,c_ivt*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +217,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),pnrAvailableOutbound,(c_ivt_com-c_ivt)*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +218,,Park and Ride Transit - Short iwait time (outbound),pnrAvailableOutbound,"c_shortiWait*min(PNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +219,,Park and Ride Transit - Long iwait time (outbound),pnrAvailableOutbound,"c_longiWait*max(PNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +220,,Park and Ride Transit - transfer wait time (outbound),pnrAvailableOutbound,c_xwait*PNR_TRN_WLK_XWAIT[tripPeriod]/100,od +221,,Park and Ride Transit - number of transfers (outbound),pnrAvailableOutbound,"c_xfers_drv*max(PNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +222,,Park and Ride Transit - Drive time (outbound),pnrAvailableOutbound,c_dtim*PNR_TRN_WLK_DTIM[tripPeriod]/100,od +223,,Park and Ride Transit - Walk egress time (outbound),pnrAvailableOutbound,c_wegr*destinationWalkTime, +224,,Park and Ride Transit - Walk other time (outbound),pnrAvailableOutbound,c_waux*PNR_TRN_WLK_WAUX[tripPeriod]/100,od +225,,Park and Ride Transit - Fare and operating cost (outbound),pnrAvailableOutbound,"c_cost*(PNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(PNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +226,,Park and Ride Transit - Ratio of drive access distance to OD distance (outbound),pnrAvailableOutbound,c_dacc_ratio*(PNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +227,,Park and Ride Transit - Destination zone densityIndex (outbound),pnrAvailableOutbound,c_densityIndex*densityIndex, +228,,Park and Ride Transit - Topology (outbound),pnrAvailableOutbound,c_topology_trn*tripTopology, +229,,Park and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +230,,Park and Ride Transit - Unavailable,inbound,(pnrAvailableInbound)==0, +231,,Park and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +232,,Park and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +233,,Park and Ride Transit - In-vehicle time,pnrAvailableInbound,c_ivt*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +234,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),pnrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +235,,Park and Ride Transit - Short iwait time,pnrAvailableInbound,"c_shortiWait*min(WLK_TRN_PNR_IWAIT[tripPeriod]/100,waitThresh)",od +236,,Park and Ride Transit - Long iwait time,pnrAvailableInbound,"c_longiWait*max(WLK_TRN_PNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +237,,Park and Ride Transit - transfer wait time,pnrAvailableInbound,c_xwait*WLK_TRN_PNR_XWAIT[tripPeriod]/100,od +238,,Park and Ride Transit - number of transfers,pnrAvailableInbound,"c_xfers_drv*max(WLK_TRN_PNR_BOARDS[tripPeriod]-1,0)",od +239,,Park and Ride Transit - Drive time,pnrAvailableInbound,c_dtim*WLK_TRN_PNR_DTIM[tripPeriod]/100,od +240,,Park and Ride Transit - Walk access time (inbound),pnrAvailableInbound,c_wacc*originWalkTime, +241,,Park and Ride Transit - Walk other time,pnrAvailableInbound,c_waux*WLK_TRN_PNR_WAUX[tripPeriod]/100,od +242,,Park and Ride Transit - Fare and operating cost,pnrAvailableInbound,"c_cost*(WLK_TRN_PNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_PNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +243,,Park and Ride Transit - Ratio of drive access distance to OD distance,pnrAvailableInbound,c_dacc_ratio*(WLK_TRN_PNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +244,,Park and Ride Transit - Destination zone densityIndex,pnrAvailableInbound,c_densityIndex*densityIndex, +245,,Park and Ride Transit - Topology,pnrAvailableInbound,c_topology_trn*tripTopology, +246,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +247,,Kiss and Ride Transit - Unavailable (outbound),outbound,(knrAvailableOutbound)==0, +248,,Kiss and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +249,,Kiss and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +250,,Kiss and Ride Transit - In-vehicle time (outbound),knrAvailableOutbound,c_ivt*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +251,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),knrAvailableOutbound,(c_ivt_com-c_ivt)*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +252,,Kiss and Ride Transit - Short iwait time (outbound),knrAvailableOutbound,"c_shortiWait*min(KNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +253,,Kiss and Ride Transit - Long iwait time (outbound),knrAvailableOutbound,"c_longiWait*max(KNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +254,,Kiss and Ride Transit - transfer wait time (outbound),knrAvailableOutbound,c_xwait*KNR_TRN_WLK_XWAIT[tripPeriod]/100,od +255,,Kiss and Ride Transit - number of transfers (outbound),knrAvailableOutbound,"c_xfers_drv*max(KNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +256,,Kiss and Ride Transit - Drive time (outbound),knrAvailableOutbound,c_dtim*KNR_TRN_WLK_DTIM[tripPeriod]/100,od +257,,Kiss and Ride Transit - Walk egress time (outbound),knrAvailableOutbound,c_wegr*destinationWalkTime, +258,,Kiss and Ride Transit - Walk other time (outbound),knrAvailableOutbound,c_waux*KNR_TRN_WLK_WAUX[tripPeriod]/100,od +259,,Kiss and Ride Transit - Fare and operating cost (outbound),knrAvailableOutbound,"c_cost*(KNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(KNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +260,,Kiss and Ride Transit - Ratio of drive access distance to OD distance (outbound),knrAvailableOutbound,c_dacc_ratio*(KNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +261,,Kiss and Ride Transit - Destination zone densityIndex (outbound),knrAvailableOutbound,c_densityIndex*densityIndex, +262,,Kiss and Ride Transit - Topology (outbound),knrAvailableOutbound,c_topology_trn*tripTopology, +263,,Kiss and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +264,,Kiss and Ride Transit - Unavailable,inbound,(knrAvailableInbound)==0, +265,,Kiss and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +266,,Kiss and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +267,,Kiss and Ride Transit - In-vehicle time,knrAvailableInbound,c_ivt*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +268,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),knrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +269,,Kiss and Ride Transit - Short iwait time,knrAvailableInbound,"c_shortiWait*min(WLK_TRN_KNR_IWAIT[tripPeriod]/100,waitThresh)",od +270,,Kiss and Ride Transit - Long iwait time,knrAvailableInbound,"c_longiWait*max(WLK_TRN_KNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +271,,Kiss and Ride Transit - transfer wait time,knrAvailableInbound,c_xwait*WLK_TRN_KNR_XWAIT[tripPeriod]/100,od +272,,Kiss and Ride Transit - number of transfers,knrAvailableInbound,"c_xfers_drv*max(WLK_TRN_KNR_BOARDS[tripPeriod]-1,0)",od +273,,Kiss and Ride Transit - Drive time,knrAvailableInbound,c_dtim*WLK_TRN_KNR_DTIM[tripPeriod]/100,od +274,,Kiss and Ride Transit - Walk access time (inbound),knrAvailableInbound,c_wacc*originWalkTime, +275,,Kiss and Ride Transit - Walk other time,knrAvailableInbound,c_waux*WLK_TRN_KNR_WAUX[tripPeriod]/100,od +276,,Kiss and Ride Transit - Fare and operating cost,knrAvailableInbound,"c_cost*(WLK_TRN_KNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_KNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +277,,Kiss and Ride Transit - Ratio of drive access distance to OD distance,knrAvailableInbound,c_dacc_ratio*(WLK_TRN_KNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +278,,Kiss and Ride Transit - Destination zone densityIndex,knrAvailableInbound,c_densityIndex*densityIndex, +279,,Kiss and Ride Transit - Topology,knrAvailableInbound,c_topology_trn*tripTopology, +280,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +281,,Taxi - In-vehicle time,,c_ivt*HOV2_TIME[tripPeriod],od +282,,Taxi - Wait time,,c_ivt*1.5*@waitTimeTaxi, +283,,Taxi - Tolls,,c_cost*HOV2_VTOLL[tripPeriod],od +284,,Taxi - Bridge toll,,c_cost*HOV2_BTOLL[tripPeriod],od +285,,Taxi - Fare,,c_cost*(costInitialTaxi + HOV2_DIST[tripPeriod] * costPerMileTaxi + HOV2_DIST[tripPeriod] * costPerMinuteTaxi )*100,"od,od" +286,,Auto tour mode availability,tourModeIsAuto,1, +287,,Walk tour mode availability,tourModeIsWalk,1, +288,,Bike tour mode availability,tourModeIsBike,1, +289,,Walk to Transit tour mode availability,tourModeIsWalkTransit,1, +290,,Drive to Transit tour modes availability,tourModeIsDriveTransit,1, +291,,Ride Hail tour modes availability,tourModeIsRideHail,1, +292,,Drive Alone tour mode ASC -- shared ride 2,indivTour*(tourMode==1),-999, +293,,Drive Alone tour mode ASC -- shared ride 3+,indivTour*(tourMode==1),-999, +294,,Drive Alone tour mode ASC -- walk,indivTour*(tourMode==1),-20.424509892826499, +295,,Drive Alone tour mode ASC -- ride hail,indivTour*(tourMode==1),-7, +296,,Shared Ride 2 tour mode ASC -- shared ride 2,indivTour*(tourMode==2),0.138963274259018, +297,,Shared Ride 2 tour mode ASC -- shared ride 3+,indivTour*(tourMode==2),-999, +298,,Shared Ride 2 tour mode ASC -- walk,indivTour*(tourMode==2),-0.31389822091724101, +299,,Shared Ride 2 tour mode ASC -- ride hail,indivTour*(tourMode==2),-7, +300,,Shared Ride 3+ tour mode ASC -- shared ride 2,indivTour*(tourMode==3),-0.54741977143629195, +301,,Shared Ride 3+ tour mode ASC -- shared ride 3+,indivTour*(tourMode==3),-1.4919035101870501E-2, +302,,Shared Ride 3+ tour mode ASC -- walk,indivTour*(tourMode==3),-0.39003957711760201, +303,,Shared Ride 3+ tour mode ASC -- ride hail,indivTour*(tourMode==3),-107.43956048344501, +304,,Walk tour mode ASC -- ride hail,indivTour*tourModeIsWalk,-7, +305,,Bike tour mode ASC -- walk,indivTour*tourModeIsBike,-10.153436763870699, +306,,Bike tour mode ASC -- ride hail,indivTour*tourModeIsBike,-7, +307,,Walk to Transit tour mode ASC -- transit,indivTour*tourModeIsWalkTransit,0.85560272226612, +308,,Walk to Transit tour mode ASC -- shared ride 2,indivTour*tourModeIsWalkTransit,-3.70009322635266, +309,,Walk to Transit tour mode ASC -- shared ride 3+,indivTour*tourModeIsWalkTransit,-4.0840016501087, +310,,Walk to Transit tour mode ASC -- walk,indivTour*tourModeIsWalkTransit,2.1996281914776898, +311,,Walk to Transit tour mode ASC -- ride hail,indivTour*tourModeIsWalkTransit,-2.2395745968381902, +312,,Drive to Transit tour mode ASC -- drive to transit,indivTour*tourModeIsDriveTransit,2.0859181492209098, +313,,Drive to Transit tour mode ASC -- ride hail,indivTour*tourModeIsDriveTransit,-1.2625869372018199, +314,,Ride Hail tour mode ASC -- shared ride 2,indivTour*tourModeIsRideHail,-2.2145610603410799, +315,,Ride Hail tour mode ASC -- shared ride 3+,indivTour*tourModeIsRideHail,-3.8718673959859702, +316,,Ride Hail tour mode ASC -- walk,indivTour*tourModeIsRideHail,-1.3523144019203772, +317,,Ride Hail tour mode ASC -- walk to transit,indivTour*tourModeIsRideHail,-3.4047752635151101, +318,,Ride Hail tour mode ASC -- taxi,indivTour*tourModeIsRideHail,-7, +319,,Walk not available for long distances,(tourMode!=4)*(walk_dist>3),1,od +320,,Bike not available for long distances,(tourMode!=5)*(bike_dist>8),1,od +321,,"Origin density index, walk, bike, walk-transit, TNC",originDensityApplied,"max(c_originDensityIndex*originDensityIndex,c_originDensityIndexMax)", +322,,Walk-express penalty for intermediate stops,(stopIsFirst+stopIsLast)<2,-0.27900000000000003, diff --git a/utilities/make-mode-choice/update-trip-escort.csv b/utilities/make-mode-choice/update-trip-escort.csv new file mode 100644 index 000000000..48eb80acb --- /dev/null +++ b/utilities/make-mode-choice/update-trip-escort.csv @@ -0,0 +1,323 @@ +row_number,token,description,filter,formula,index +1,c_ivt,In-vehicle time coefficient,,-2.7900000000000001E-2, +2,c_ivt_lrt,In-vehicle time coefficient on light rail,,-2.511E-2, +3,c_ivt_ferry,In-vehicle time coefficient on ferry,,-2.2320000000000003E-2, +4,c_ivt_exp,In-vehicle time coefficient on express bus,,-1.7500000000000002E-2, +5,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,-2.2320000000000003E-2, +6,c_ivt_com,In-vehicle time coefficient on commuter rail,,-2.2320000000000003E-2, +7,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,-5.5800000000000002E-2, +8,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,-2.7900000000000001E-2, +9,c_wacc,Walk access time coefficient,,-5.5800000000000002E-2, +10,c_wegr,Walk egress time coefficient,,-5.5800000000000002E-2, +11,c_waux,Walk auxilliary time coefficient,,-5.5800000000000002E-2, +12,c_dtim,Drive access time coefficient,,-5.5800000000000002E-2, +13,c_xfers_wlk,"Transfer penalty, walk",,15.00 * c_ivt, +14,c_xfers_drv,"Transfer penalty, drive-transit",,20.00 * c_ivt, +15,c_xwait,Transfer wait time coefficient,,-5.5800000000000002E-2, +16,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,-5.5800000000000002E-2, +17,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,-0.27900000000000003, +18,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,-0.1116, +19,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,-0.55800000000000005, +20,vot,Value of Time,,@valueOfTime, +21,c_cost,"Cost coefficient, derived from Value of Time",,(0.6*c_ivt)/vot, +22,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +23,c_topology_walk,"Topology dummy coefficient, applied to walk",,-0.41850000000000004, +24,c_topology_bike,"Topology dummy coefficient, applied to bike",,-0.55800000000000005, +25,c_topology_trn,"Topology dummy coefficient, applied to transit",,-6.1380000000000011E-2, +26,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,5.5799999999999999E-3, +27,c_originDensityIndex,"Origin density index coef, applied to walk, bike, walk-transit",,1.6739999999999998E-2, +28,c_originDensityIndexMax,Maximum effect of origin density index,,0.41850000000000004, +29,c_age1619_da,Age 16-19--Drive Alone,,0, +30,c_age010_trn,Age 0-10--Transit,,0, +31,c_age16p_sr,Age 16+ -- Shared Ride,,0, +32,c_hhsize1_sr,Household Size 1--Shared Ride,,-0.73460000000000003, +33,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +34,freeParkingAllowed,Free parking is allowed for this purpose,,0, +35,costPerMile,Auto operating cost per mile,,18.29, +36,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +37,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +38,waitThresh,Wait time threshold to segment coefficients (minutes of wait),,10, +39,walkThresh,Walk threshold to segment coefficients (miles),,1, +40,walkSpeed,Walk speed (miles per hour),,3, +41,bikeThresh,Bike threshold to segment coefficients (miles),,6, +42,bikeSpeed,Bike speed (miles per hour),,12, +43,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333331, +44,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666663, +45,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +46,upperEA,Upper limit on time of day for the Early morning time period,,5, +47,upperAM,Upper limit on time of day for the AM peak time period,,9, +48,upperMD,Upper limit on time of day for the Midday time period,,14, +49,upperPM,Upper limit on time of day for the PM peak time period,,18, +50,upperEV,Upper limit on time of day for the Evening time period,,21, +51,autos,Household autos,,@autos, +52,workers,Household workers,,@workers, +53,hhSize,Household size (number of persons),,@hhSize, +54,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +55,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +56,age,Person age,,@age, +57,timeOfDay,Time of day for trip,,@tripTimeOfDay, +58,destZoneAreaType,Area type,,@areaType, +59,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +60,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +61,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +62,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +63,jointTour,Joint tour,,@tourCategoryJoint, +64,numberOfParticipantsInJointTour,Number of participants in joint tour,jointTour,@numberOfParticipantsInJointTour, +65,indivTour,Individual tour,jointTour==0,1, +66,subtour,Work based subtour,,@tourCategorySubtour, +67,tourMode,Primary tour mode integer code,,@tourMode, +68,tourModeIsSOV,Primary tour mode is auto,,@tourModeIsSOV, +69,tourModeIsAuto,Primary tour mode is auto,,@tourModeIsAuto, +70,tourModeIsWalk,Primary tour mode is walk,,@tourModeIsWalk, +71,tourModeIsBike,Primary tour mode is bike,,@tourModeIsBike, +72,tourModeIsWalkTransit,Primary tour mode is walk to transit,,@tourModeIsWalkTransit, +73,tourModeIsDriveTransit,Primary tour mode is drive to transit,,@tourModeIsDriveTransit, +74,tourModeIsRideHail,Primary tour mode is ride hailing,,@tourModeIsRideHail, +75,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed==1,@freeParking, +76,inbound,Stop is in inbound direction,,@tripIsInbound, +77,outbound,Stop is in outbound direction,,1-inbound, +78,stopIsFirst,First stop on half-tour,,@stopIsFirst, +79,stopIsLast,Last stop on half-tour,,@stopIsLast, +80,originTerminalTime,Terminal time (minutes) at origin,,@terminalTimeAtOrigin, +81,originTerminalTime,Terminal time (minutes) at origin--not counted at home,(inbound==0)*(stopIsFirst==1),0, +82,destTerminalTime,Terminal time (minutes) at destination,,@terminalTimeAtDestination, +83,destTerminalTime,Terminal time (minutes) at destination--not counted at home,(inbound==1)*(stopIsLast==1),0, +84,totalTerminalTime,Total Terminal time (minutes),,(originTerminalTime+destTerminalTime), +85,originHourlyParkingCost,Peak hourly parking cost at trip origin,,@hourlyPeakParkingCostAtOrigin, +86,destHourlyParkingCost,Peak hourly parking cost at trip destination,,@hourlyPeakParkingCostAtDestination, +87,tourDuration,Full duration of tour,,@tourDuration, +88,originDuration,Stop Duration if Origin of trip is at home,(inbound==0)*(stopIsFirst==1),0, +89,originDuration,Stop Duration if Origin of trip is at primary destination,(inbound==1)*(stopIsFirst==1)*(freeParkingAvailable==2),tourDuration, +90,originDuration,Stop Duration Origin of tirp is at an intermediate stop,stopIsFirst==0,1, +91,destDuration,Stop Duration if Destination of trip is at home,(inbound==1)*(stopIsLast==1),0, +92,destDuration,Stop Duration if Destination of trip is at primary destination,(inbound==0)*(stopIsLast==1)*(freeParkingAvailable==2),tourDuration, +93,destDuration,Stop Duration if Destination of trip is at an intermediate sotp,stopIsLast==0,1, +94,originParkingCost,Parking cost at trip origin,,originDuration*originHourlyParkingCost, +95,destParkingCost,Parking cost at trip destination,,destDuration*destHourlyParkingCost, +96,totalParkingCost,Total parking cost,,(originParkingCost+destParkingCost)/2, +97,tripTopology,Zone topology,,"if(inbound==1,@originTopology,@destinationTopology)", +98,originDensityIndex,Origin density index,,"if(inbound==1,@destinationDensityIndex,@originDensityIndex)", +99,originDensityApplied,Origin density index matters for this purpose,,1, +100,densityIndex,Zone density index (hhdens*empdens)/(hhdens+empdens),,"if(inbound==1,@originDensityIndex,@destinationDensityIndex)", +101,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +102,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +103,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +104,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +105,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +106,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA,1,0)*if(timeOfDay<=upperAM,2,0)", +130,tripPeriod,"trip departs in MD period, set index to 3",tripPeriod==0,"if(timeOfDay>upperAM,1,0)*if(timeOfDay<=upperMD,3,0)", +131,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperMD,1,0)*if(timeOfDay<=upperPM,4,0)", +132,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperPM,1,0)*if(timeOfDay<=upperNT,5,0)", +133,tripPeriod,"trip departs in EV period, set index to 5",tripPeriod==0,"if(timeOfDay>upperNT,6,0)", +134,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +135,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +136,walkTransitPossible,Walk to transit is available,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +137,driveTransitPossible,Drive to transit is available,outbound,walkTransitDest*(1-zeroAutoHh), +138,driveTransitPossible,Drive to transit is available,inbound,walkTransitOrig*(1-zeroAutoHh), +139,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +140,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +141,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +142,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +143,walk_dist,Walking distance,,DISTWALK,od +144,bike_dist,Biking distance,,DISTBIKE,od +145,sovAvailable,SOV mode is available,,"if(SOV_TIME[tripPeriod]>0,1,0)",od +146,hov2Available,HOV 2 mode is available,,"if(HOV2_TIME[tripPeriod]>0,1,0)",od +147,hov3Available,HOV 3+ mode is available,,"if(HOV3_TIME[tripPeriod]>0,1,0)",od +148,walkTransitAvailable,Walk local mode is available,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +149,pnrTransitAvailable,Park and ride transit is available for outbound tour,driveTransitPossible*(tourMode==7)*outbound,(PNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +150,pnrTransitAvailable,Park and ride transit is available for inbound tour,driveTransitPossible*(tourMode==7)*inbound,(WKL_TRN_PNR_TOTIVT[tripPeriod]/100>0),od +151,knrTransitAvailable,Kiss and ride transit is available for outbound tour,driveTransitPossible*(tourMode==8)*outbound,(KNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +152,knrTransitAvailable,Kiss and ride transit is available for inbound tour,driveTransitPossible*(tourMode==8)*inbound,(WKL_TRN_KNR_TOTIVT[tripPeriod]/100>0),od +153,,Drive alone - Unavailable,,sovAvailable==0, +154,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +155,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16) * (useAV==0),1, +156,,Drive alone - Unavailable for joint tours,jointTour==1,1, +157,,Drive alone - Unavailable if didn't drive to work,subtour==1,tourModeIsSOV==0, +158,,Drive alone - In-vehicle time,sovAvailable,c_ivt*SOV_TIME[tripPeriod]*autoIVTFactor,od +159,,Drive alone - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +160,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*SOV_DIST[tripPeriod])*autoCPMFactor,od +161,,Drive alone - Parking cost,sovAvailable,c_cost*totalParkingCost*autoParkingCostFactor, +162,,Drive alone - Bridge toll,sovAvailable,c_cost*SOV_BTOLL[tripPeriod],od +163,,Drive alone - Value toll,sovAvailable,"c_cost*SOV_VTOLL[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +164,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +165,,Shared ride 2 - Unavailable,,hov2Available==0, +166,,Shared ride 2 - Unavailable based on party size,jointTour==1,numberOfParticipantsInJointTour>2, +167,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*HOV2_TIME[tripPeriod]*autoIVTFactor,od +168,,Shared ride 2 - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +169,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*HOV2_DIST[tripPeriod])*autoCPMFactor,od +170,,Shared ride 2 - Parking cost,hov2Available,c_cost*totalParkingCost/costShareSr2*autoParkingCostFactor, +171,,Shared ride 2 - Bridge toll,hov2Available,c_cost*HOV2_BTOLL[tripPeriod]/costShareSr2,od +172,,Shared ride 2 - Value toll,hov2Available,"c_cost*HOV2_VTOLL[tripPeriod]/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +173,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +174,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +175,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +176,,Shared ride 3+ - Unavailable,,hov3Available==0, +177,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*HOV3_TIME[tripPeriod]*autoIVTFactor,od +178,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +179,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*HOV3_DIST[tripPeriod])*autoCPMFactor,od +180,,Shared ride 3+ - Parking cost,hov3Available,c_cost*totalParkingCost/costShareSr3*autoParkingCostFactor, +181,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*HOV3_BTOLL[tripPeriod]/costShareSr3,od +182,,Shared ride 3+ - Value toll,hov3Available,"c_cost*HOV3_VTOLL[tripPeriod]/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +183,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +184,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +185,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +186,,Walk - Time up to 1 mile,,"c_walkTimeShort*min(walk_dist*60/walkSpeed, walkThresh*60/walkSpeed)",od +187,,Walk - Time beyond 1 mile,,"c_walkTimeLong*max(walk_dist*60/walkSpeed - walkThresh*60/walkSpeed, 0)",od +188,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +189,,Walk - Topology,,c_topology_walk*tripTopology, +190,,Bike - Unavailable if didn't bike to work,(subtour==1)*(tourModeIsBike==0),1, +191,,Bike - Time up to 6 miles,,"c_bikeTimeShort*min(bike_dist*60/bikeSpeed, bikeThresh*60/bikeSpeed)",od +192,,Bike - Time beyond 6 of a miles,,"c_bikeTimeLong*max(bike_dist*60/bikeSpeed - bikeThresh*60/bikeSpeed, 0)",od +193,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +194,,Bike - Topology,,c_topology_bike*tripTopology, +195,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +196,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*WLK_TRN_WLK_IVT_LOC[tripPeriod]/100,od +197,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*WLK_TRN_WLK_IVT_EXP[tripPeriod]/100,od +198,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*WLK_TRN_WLK_IVT_LRT[tripPeriod]/100,od +199,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*WLK_TRN_WLK_IVT_FRY[tripPeriod]/100,od +200,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*WLK_TRN_WLK_IVT_HVY[tripPeriod]/100,od +201,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*WLK_TRN_WLK_IVT_COM[tripPeriod]/100,od +202,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiWait*min(WLK_TRN_WLKIWAIT[tripPeriod]/100,waitThresh)",od +203,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiWait*max(WLK_TRN_WLKIWAIT[tripPeriod]/100-waitThresh,0)",od +204,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*WLK_TRN_WLKXWAIT[tripPeriod]/100,od +205,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*max(WLK_TRN_WLKBOARDS[tripPeriod]-1,0)",od +206,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*originWalkTime, +207,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*destinationWalkTime, +208,,Walk to Transit - Walk other time,walkTransitAvailable,c_waux*WLK_TRN_WLKWAUX[tripPeriod]/100,od +209,,Walk to Transit - Fare,walkTransitAvailable,"c_cost*WLK_TRN_WLKFAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)",od +210,,Walk to Transit - Destination zone densityIndex,walkTransitAvailable,c_densityIndex*densityIndex, +211,,Walk to Transit - Topology,walkTransitAvailable,c_topology_trn*tripTopology, +212,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Park and Ride Transit - Unavailable (outbound),outbound,(pnrAvailableOutbound)==0, +214,,Park and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +215,,Park and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +216,,Park and Ride Transit - In-vehicle time (outbound),pnrAvailableOutbound,c_ivt*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +217,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),pnrAvailableOutbound,(c_ivt_com-c_ivt)*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +218,,Park and Ride Transit - Short iwait time (outbound),pnrAvailableOutbound,"c_shortiWait*min(PNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +219,,Park and Ride Transit - Long iwait time (outbound),pnrAvailableOutbound,"c_longiWait*max(PNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +220,,Park and Ride Transit - transfer wait time (outbound),pnrAvailableOutbound,c_xwait*PNR_TRN_WLK_XWAIT[tripPeriod]/100,od +221,,Park and Ride Transit - number of transfers (outbound),pnrAvailableOutbound,"c_xfers_drv*max(PNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +222,,Park and Ride Transit - Drive time (outbound),pnrAvailableOutbound,c_dtim*PNR_TRN_WLK_DTIM[tripPeriod]/100,od +223,,Park and Ride Transit - Walk egress time (outbound),pnrAvailableOutbound,c_wegr*destinationWalkTime, +224,,Park and Ride Transit - Walk other time (outbound),pnrAvailableOutbound,c_waux*PNR_TRN_WLK_WAUX[tripPeriod]/100,od +225,,Park and Ride Transit - Fare and operating cost (outbound),pnrAvailableOutbound,"c_cost*(PNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(PNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +226,,Park and Ride Transit - Ratio of drive access distance to OD distance (outbound),pnrAvailableOutbound,c_dacc_ratio*(PNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +227,,Park and Ride Transit - Destination zone densityIndex (outbound),pnrAvailableOutbound,c_densityIndex*densityIndex, +228,,Park and Ride Transit - Topology (outbound),pnrAvailableOutbound,c_topology_trn*tripTopology, +229,,Park and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +230,,Park and Ride Transit - Unavailable,inbound,(pnrAvailableInbound)==0, +231,,Park and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +232,,Park and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +233,,Park and Ride Transit - In-vehicle time,pnrAvailableInbound,c_ivt*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +234,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),pnrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +235,,Park and Ride Transit - Short iwait time,pnrAvailableInbound,"c_shortiWait*min(WLK_TRN_PNR_IWAIT[tripPeriod]/100,waitThresh)",od +236,,Park and Ride Transit - Long iwait time,pnrAvailableInbound,"c_longiWait*max(WLK_TRN_PNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +237,,Park and Ride Transit - transfer wait time,pnrAvailableInbound,c_xwait*WLK_TRN_PNR_XWAIT[tripPeriod]/100,od +238,,Park and Ride Transit - number of transfers,pnrAvailableInbound,"c_xfers_drv*max(WLK_TRN_PNR_BOARDS[tripPeriod]-1,0)",od +239,,Park and Ride Transit - Drive time,pnrAvailableInbound,c_dtim*WLK_TRN_PNR_DTIM[tripPeriod]/100,od +240,,Park and Ride Transit - Walk access time (inbound),pnrAvailableInbound,c_wacc*originWalkTime, +241,,Park and Ride Transit - Walk other time,pnrAvailableInbound,c_waux*WLK_TRN_PNR_WAUX[tripPeriod]/100,od +242,,Park and Ride Transit - Fare and operating cost,pnrAvailableInbound,"c_cost*(WLK_TRN_PNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_PNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +243,,Park and Ride Transit - Ratio of drive access distance to OD distance,pnrAvailableInbound,c_dacc_ratio*(WLK_TRN_PNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +244,,Park and Ride Transit - Destination zone densityIndex,pnrAvailableInbound,c_densityIndex*densityIndex, +245,,Park and Ride Transit - Topology,pnrAvailableInbound,c_topology_trn*tripTopology, +246,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +247,,Kiss and Ride Transit - Unavailable (outbound),outbound,(knrAvailableOutbound)==0, +248,,Kiss and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +249,,Kiss and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +250,,Kiss and Ride Transit - In-vehicle time (outbound),knrAvailableOutbound,c_ivt*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +251,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),knrAvailableOutbound,(c_ivt_com-c_ivt)*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +252,,Kiss and Ride Transit - Short iwait time (outbound),knrAvailableOutbound,"c_shortiWait*min(KNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +253,,Kiss and Ride Transit - Long iwait time (outbound),knrAvailableOutbound,"c_longiWait*max(KNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +254,,Kiss and Ride Transit - transfer wait time (outbound),knrAvailableOutbound,c_xwait*KNR_TRN_WLK_XWAIT[tripPeriod]/100,od +255,,Kiss and Ride Transit - number of transfers (outbound),knrAvailableOutbound,"c_xfers_drv*max(KNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +256,,Kiss and Ride Transit - Drive time (outbound),knrAvailableOutbound,c_dtim*KNR_TRN_WLK_DTIM[tripPeriod]/100,od +257,,Kiss and Ride Transit - Walk egress time (outbound),knrAvailableOutbound,c_wegr*destinationWalkTime, +258,,Kiss and Ride Transit - Walk other time (outbound),knrAvailableOutbound,c_waux*KNR_TRN_WLK_WAUX[tripPeriod]/100,od +259,,Kiss and Ride Transit - Fare and operating cost (outbound),knrAvailableOutbound,"c_cost*(KNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(KNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +260,,Kiss and Ride Transit - Ratio of drive access distance to OD distance (outbound),knrAvailableOutbound,c_dacc_ratio*(KNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +261,,Kiss and Ride Transit - Destination zone densityIndex (outbound),knrAvailableOutbound,c_densityIndex*densityIndex, +262,,Kiss and Ride Transit - Topology (outbound),knrAvailableOutbound,c_topology_trn*tripTopology, +263,,Kiss and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +264,,Kiss and Ride Transit - Unavailable,inbound,(knrAvailableInbound)==0, +265,,Kiss and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +266,,Kiss and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +267,,Kiss and Ride Transit - In-vehicle time,knrAvailableInbound,c_ivt*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +268,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),knrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +269,,Kiss and Ride Transit - Short iwait time,knrAvailableInbound,"c_shortiWait*min(WLK_TRN_KNR_IWAIT[tripPeriod]/100,waitThresh)",od +270,,Kiss and Ride Transit - Long iwait time,knrAvailableInbound,"c_longiWait*max(WLK_TRN_KNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +271,,Kiss and Ride Transit - transfer wait time,knrAvailableInbound,c_xwait*WLK_TRN_KNR_XWAIT[tripPeriod]/100,od +272,,Kiss and Ride Transit - number of transfers,knrAvailableInbound,"c_xfers_drv*max(WLK_TRN_KNR_BOARDS[tripPeriod]-1,0)",od +273,,Kiss and Ride Transit - Drive time,knrAvailableInbound,c_dtim*WLK_TRN_KNR_DTIM[tripPeriod]/100,od +274,,Kiss and Ride Transit - Walk access time (inbound),knrAvailableInbound,c_wacc*originWalkTime, +275,,Kiss and Ride Transit - Walk other time,knrAvailableInbound,c_waux*WLK_TRN_KNR_WAUX[tripPeriod]/100,od +276,,Kiss and Ride Transit - Fare and operating cost,knrAvailableInbound,"c_cost*(WLK_TRN_KNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_KNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +277,,Kiss and Ride Transit - Ratio of drive access distance to OD distance,knrAvailableInbound,c_dacc_ratio*(WLK_TRN_KNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +278,,Kiss and Ride Transit - Destination zone densityIndex,knrAvailableInbound,c_densityIndex*densityIndex, +279,,Kiss and Ride Transit - Topology,knrAvailableInbound,c_topology_trn*tripTopology, +280,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +281,,Taxi - In-vehicle time,,c_ivt*HOV2_TIME[tripPeriod],od +282,,Taxi - Wait time,,c_ivt*1.5*@waitTimeTaxi, +283,,Taxi - Tolls,,c_cost*HOV2_VTOLL[tripPeriod],od +284,,Taxi - Bridge toll,,c_cost*HOV2_BTOLL[tripPeriod],od +285,,Taxi - Fare,,c_cost*(costInitialTaxi + HOV2_DIST[tripPeriod] * costPerMileTaxi + HOV2_DIST[tripPeriod] * costPerMinuteTaxi )*100,"od,od" +286,,Auto tour mode availability,tourModeIsAuto,1, +287,,Walk tour mode availability,tourModeIsWalk,1, +288,,Bike tour mode availability,tourModeIsBike,1, +289,,Walk to Transit tour mode availability,tourModeIsWalkTransit,1, +290,,Drive to Transit tour modes availability,tourModeIsDriveTransit,1, +291,,Ride Hail tour modes availability,tourModeIsRideHail,1, +292,,Drive Alone tour mode ASC -- shared ride 2,indivTour*(tourMode==1),-999, +293,,Drive Alone tour mode ASC -- shared ride 3+,indivTour*(tourMode==1),-999, +294,,Drive Alone tour mode ASC -- walk,indivTour*(tourMode==1),-20.424509892826542, +295,,Drive Alone tour mode ASC -- ride hail,indivTour*(tourMode==1),-7, +296,,Shared Ride 2 tour mode ASC -- shared ride 2,indivTour*(tourMode==2),0.13896327425901844, +297,,Shared Ride 2 tour mode ASC -- shared ride 3+,indivTour*(tourMode==2),-999, +298,,Shared Ride 2 tour mode ASC -- walk,indivTour*(tourMode==2),-0.31389822091724112, +299,,Shared Ride 2 tour mode ASC -- ride hail,indivTour*(tourMode==2),-7, +300,,Shared Ride 3+ tour mode ASC -- shared ride 2,indivTour*(tourMode==3),-0.54741977143629272, +301,,Shared Ride 3+ tour mode ASC -- shared ride 3+,indivTour*(tourMode==3),-1.491903510187052E-2, +302,,Shared Ride 3+ tour mode ASC -- walk,indivTour*(tourMode==3),-0.39003957711760229, +303,,Shared Ride 3+ tour mode ASC -- ride hail,indivTour*(tourMode==3),-107.43956048344576, +304,,Walk tour mode ASC -- ride hail,indivTour*tourModeIsWalk,-7, +305,,Bike tour mode ASC -- walk,indivTour*tourModeIsBike,-10.153436763870724, +306,,Bike tour mode ASC -- ride hail,indivTour*tourModeIsBike,-7, +307,,Walk to Transit tour mode ASC -- transit,indivTour*tourModeIsWalkTransit,0.85560272226612022, +308,,Walk to Transit tour mode ASC -- shared ride 2,indivTour*tourModeIsWalkTransit,-3.7000932263526609, +309,,Walk to Transit tour mode ASC -- shared ride 3+,indivTour*tourModeIsWalkTransit,-4.0840016501087089, +310,,Walk to Transit tour mode ASC -- walk,indivTour*tourModeIsWalkTransit,2.1996281914776996, +311,,Walk to Transit tour mode ASC -- ride hail,indivTour*tourModeIsWalkTransit,-2.2395745968381973, +312,,Drive to Transit tour mode ASC -- drive to transit,indivTour*tourModeIsDriveTransit,2.0859181492209142, +313,,Drive to Transit tour mode ASC -- ride hail,indivTour*tourModeIsDriveTransit,-1.2625869372018286, +314,,Ride Hail tour mode ASC -- shared ride 2,indivTour*tourModeIsRideHail,-2.2145610603410848, +315,,Ride Hail tour mode ASC -- shared ride 3+,indivTour*tourModeIsRideHail,-7, +316,,Ride Hail tour mode ASC -- walk,indivTour*tourModeIsRideHail,-7, +317,,Ride Hail tour mode ASC -- walk to transit,indivTour*tourModeIsRideHail,-3.404775263515111, +318,,Ride Hail tour mode ASC -- taxi,indivTour*tourModeIsRideHail,-7, +319,,Walk not available for long distances,(tourMode!=4)*(walk_dist>3),1,od +320,,Bike not available for long distances,(tourMode!=5)*(bike_dist>8),1,od +321,,"Origin density index, walk, bike, walk-transit, TNC",originDensityApplied,"max(c_originDensityIndex*originDensityIndex,c_originDensityIndexMax)", +322,,Walk-express penalty for intermediate stops,(stopIsFirst+stopIsLast)<2,-0.27900000000000003, diff --git a/utilities/make-mode-choice/update-trip-othdiscr.csv b/utilities/make-mode-choice/update-trip-othdiscr.csv new file mode 100644 index 000000000..2f9fc8b1e --- /dev/null +++ b/utilities/make-mode-choice/update-trip-othdiscr.csv @@ -0,0 +1,323 @@ +row_number,token,description,filter,formula,index +1,c_ivt,In-vehicle time coefficient,,-2.7900000000000001E-2, +2,c_ivt_lrt,In-vehicle time coefficient on light rail,,-2.511E-2, +3,c_ivt_ferry,In-vehicle time coefficient on ferry,,-2.232E-2, +4,c_ivt_exp,In-vehicle time coefficient on express bus,,-1.7500000000000002E-2, +5,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,-2.232E-2, +6,c_ivt_com,In-vehicle time coefficient on commuter rail,,-2.232E-2, +7,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,-5.5800000000000002E-2, +8,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,-2.7900000000000001E-2, +9,c_wacc,Walk access time coefficient,,-5.5800000000000002E-2, +10,c_wegr,Walk egress time coefficient,,-5.5800000000000002E-2, +11,c_waux,Walk auxilliary time coefficient,,-5.5800000000000002E-2, +12,c_dtim,Drive access time coefficient,,-5.5800000000000002E-2, +13,c_xfers_wlk,"Transfer penalty, walk",,15.00 * c_ivt, +14,c_xfers_drv,"Transfer penalty, drive-transit",,20.00 * c_ivt, +15,c_xwait,Transfer wait time coefficient,,-5.5800000000000002E-2, +16,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,-5.5800000000000002E-2, +17,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,-0.27900000000000003, +18,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,-0.1116, +19,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,-0.55800000000000005, +20,vot,Value of Time,,@valueOfTime, +21,c_cost,"Cost coefficient, derived from Value of Time",,(0.6*c_ivt)/vot, +22,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +23,c_topology_walk,"Topology dummy coefficient, applied to walk",,-0.41849999999999998, +24,c_topology_bike,"Topology dummy coefficient, applied to bike",,-0.55800000000000005, +25,c_topology_trn,"Topology dummy coefficient, applied to transit",,-6.1379999999999997E-2, +26,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,5.5799999999999903E-3, +27,c_originDensityIndex,"Origin density index coef, applied to walk, bike, walk-transit",,1.6739999999999901E-2, +28,c_originDensityIndexMax,Maximum effect of origin density index,,0.41849999999999998, +29,c_age1619_da,Age 16-19--Drive Alone,,0, +30,c_age010_trn,Age 0-10--Transit,,0, +31,c_age16p_sr,Age 16+ -- Shared Ride,,0, +32,c_hhsize1_sr,Household Size 1--Shared Ride,,-0.73460000000000003, +33,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +34,freeParkingAllowed,Free parking is allowed for this purpose,,0, +35,costPerMile,Auto operating cost per mile,,18.29, +36,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +37,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +38,waitThresh,Wait time threshold to segment coefficients (minutes of wait),,10, +39,walkThresh,Walk threshold to segment coefficients (miles),,1, +40,walkSpeed,Walk speed (miles per hour),,3, +41,bikeThresh,Bike threshold to segment coefficients (miles),,6, +42,bikeSpeed,Bike speed (miles per hour),,12, +43,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333298, +44,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666596, +45,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +46,upperEA,Upper limit on time of day for the Early morning time period,,5, +47,upperAM,Upper limit on time of day for the AM peak time period,,9, +48,upperMD,Upper limit on time of day for the Midday time period,,14, +49,upperPM,Upper limit on time of day for the PM peak time period,,18, +50,upperEV,Upper limit on time of day for the Evening time period,,21, +51,autos,Household autos,,@autos, +52,workers,Household workers,,@workers, +53,hhSize,Household size (number of persons),,@hhSize, +54,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +55,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +56,age,Person age,,@age, +57,timeOfDay,Time of day for trip,,@tripTimeOfDay, +58,destZoneAreaType,Area type,,@areaType, +59,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +60,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +61,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +62,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +63,jointTour,Joint tour,,@tourCategoryJoint, +64,numberOfParticipantsInJointTour,Number of participants in joint tour,jointTour,@numberOfParticipantsInJointTour, +65,indivTour,Individual tour,jointTour==0,1, +66,subtour,Work based subtour,,@tourCategorySubtour, +67,tourMode,Primary tour mode integer code,,@tourMode, +68,tourModeIsSOV,Primary tour mode is auto,,@tourModeIsSOV, +69,tourModeIsAuto,Primary tour mode is auto,,@tourModeIsAuto, +70,tourModeIsWalk,Primary tour mode is walk,,@tourModeIsWalk, +71,tourModeIsBike,Primary tour mode is bike,,@tourModeIsBike, +72,tourModeIsWalkTransit,Primary tour mode is walk to transit,,@tourModeIsWalkTransit, +73,tourModeIsDriveTransit,Primary tour mode is drive to transit,,@tourModeIsDriveTransit, +74,tourModeIsRideHail,Primary tour mode is ride hailing,,@tourModeIsRideHail, +75,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed==1,@freeParking, +76,inbound,Stop is in inbound direction,,@tripIsInbound, +77,outbound,Stop is in outbound direction,,1-inbound, +78,stopIsFirst,First stop on half-tour,,@stopIsFirst, +79,stopIsLast,Last stop on half-tour,,@stopIsLast, +80,originTerminalTime,Terminal time (minutes) at origin,,@terminalTimeAtOrigin, +81,originTerminalTime,Terminal time (minutes) at origin--not counted at home,(inbound==0)*(stopIsFirst==1),0, +82,destTerminalTime,Terminal time (minutes) at destination,,@terminalTimeAtDestination, +83,destTerminalTime,Terminal time (minutes) at destination--not counted at home,(inbound==1)*(stopIsLast==1),0, +84,totalTerminalTime,Total Terminal time (minutes),,(originTerminalTime+destTerminalTime), +85,originHourlyParkingCost,Peak hourly parking cost at trip origin,,@hourlyPeakParkingCostAtOrigin, +86,destHourlyParkingCost,Peak hourly parking cost at trip destination,,@hourlyPeakParkingCostAtDestination, +87,tourDuration,Full duration of tour,,@tourDuration, +88,originDuration,Stop Duration if Origin of trip is at home,(inbound==0)*(stopIsFirst==1),0, +89,originDuration,Stop Duration if Origin of trip is at primary destination,(inbound==1)*(stopIsFirst==1)*(freeParkingAvailable==2),tourDuration, +90,originDuration,Stop Duration Origin of tirp is at an intermediate stop,stopIsFirst==0,1, +91,destDuration,Stop Duration if Destination of trip is at home,(inbound==1)*(stopIsLast==1),0, +92,destDuration,Stop Duration if Destination of trip is at primary destination,(inbound==0)*(stopIsLast==1)*(freeParkingAvailable==2),tourDuration, +93,destDuration,Stop Duration if Destination of trip is at an intermediate sotp,stopIsLast==0,1, +94,originParkingCost,Parking cost at trip origin,,originDuration*originHourlyParkingCost, +95,destParkingCost,Parking cost at trip destination,,destDuration*destHourlyParkingCost, +96,totalParkingCost,Total parking cost,,(originParkingCost+destParkingCost)/2, +97,tripTopology,Zone topology,,"if(inbound==1,@originTopology,@destinationTopology)", +98,originDensityIndex,Origin density index,,"if(inbound==1,@destinationDensityIndex,@originDensityIndex)", +99,originDensityApplied,Origin density index matters for this purpose,,1, +100,densityIndex,Zone density index (hhdens*empdens)/(hhdens+empdens),,"if(inbound==1,@originDensityIndex,@destinationDensityIndex)", +101,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +102,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +103,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +104,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +105,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +106,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA,1,0)*if(timeOfDay<=upperAM,2,0)", +130,tripPeriod,"trip departs in MD period, set index to 3",tripPeriod==0,"if(timeOfDay>upperAM,1,0)*if(timeOfDay<=upperMD,3,0)", +131,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperMD,1,0)*if(timeOfDay<=upperPM,4,0)", +132,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperPM,1,0)*if(timeOfDay<=upperNT,5,0)", +133,tripPeriod,"trip departs in EV period, set index to 5",tripPeriod==0,"if(timeOfDay>upperNT,6,0)", +134,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +135,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +136,walkTransitPossible,Walk to transit is available,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +137,driveTransitPossible,Drive to transit is available,outbound,walkTransitDest*(1-zeroAutoHh), +138,driveTransitPossible,Drive to transit is available,inbound,walkTransitOrig*(1-zeroAutoHh), +139,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +140,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +141,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +142,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +143,walk_dist,Walking distance,,DISTWALK,od +144,bike_dist,Biking distance,,DISTBIKE,od +145,sovAvailable,SOV mode is available,,"if(SOV_TIME[tripPeriod]>0,1,0)",od +146,hov2Available,HOV 2 mode is available,,"if(HOV2_TIME[tripPeriod]>0,1,0)",od +147,hov3Available,HOV 3+ mode is available,,"if(HOV3_TIME[tripPeriod]>0,1,0)",od +148,walkTransitAvailable,Walk local mode is available,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +149,pnrTransitAvailable,Park and ride transit is available for outbound tour,driveTransitPossible*(tourMode==7)*outbound,(PNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +150,pnrTransitAvailable,Park and ride transit is available for inbound tour,driveTransitPossible*(tourMode==7)*inbound,(WKL_TRN_PNR_TOTIVT[tripPeriod]/100>0),od +151,knrTransitAvailable,Kiss and ride transit is available for outbound tour,driveTransitPossible*(tourMode==8)*outbound,(KNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +152,knrTransitAvailable,Kiss and ride transit is available for inbound tour,driveTransitPossible*(tourMode==8)*inbound,(WKL_TRN_KNR_TOTIVT[tripPeriod]/100>0),od +153,,Drive alone - Unavailable,,sovAvailable==0, +154,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +155,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16) * (useAV==0),1, +156,,Drive alone - Unavailable for joint tours,jointTour==1,1, +157,,Drive alone - Unavailable if didn't drive to work,subtour==1,tourModeIsSOV==0, +158,,Drive alone - In-vehicle time,sovAvailable,c_ivt*SOV_TIME[tripPeriod]*autoIVTFactor,od +159,,Drive alone - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +160,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*SOV_DIST[tripPeriod])*autoCPMFactor,od +161,,Drive alone - Parking cost,sovAvailable,c_cost*totalParkingCost*autoParkingCostFactor, +162,,Drive alone - Bridge toll,sovAvailable,c_cost*SOV_BTOLL[tripPeriod],od +163,,Drive alone - Value toll,sovAvailable,"c_cost*SOV_VTOLL[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +164,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +165,,Shared ride 2 - Unavailable,,hov2Available==0, +166,,Shared ride 2 - Unavailable based on party size,jointTour==1,numberOfParticipantsInJointTour>2, +167,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*HOV2_TIME[tripPeriod]*autoIVTFactor,od +168,,Shared ride 2 - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +169,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*HOV2_DIST[tripPeriod])*autoCPMFactor,od +170,,Shared ride 2 - Parking cost,hov2Available,c_cost*totalParkingCost/costShareSr2*autoParkingCostFactor, +171,,Shared ride 2 - Bridge toll,hov2Available,c_cost*HOV2_BTOLL[tripPeriod]/costShareSr2,od +172,,Shared ride 2 - Value toll,hov2Available,"c_cost*HOV2_VTOLL[tripPeriod]/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +173,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +174,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +175,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +176,,Shared ride 3+ - Unavailable,,hov3Available==0, +177,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*HOV3_TIME[tripPeriod]*autoIVTFactor,od +178,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +179,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*HOV3_DIST[tripPeriod])*autoCPMFactor,od +180,,Shared ride 3+ - Parking cost,hov3Available,c_cost*totalParkingCost/costShareSr3*autoParkingCostFactor, +181,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*HOV3_BTOLL[tripPeriod]/costShareSr3,od +182,,Shared ride 3+ - Value toll,hov3Available,"c_cost*HOV3_VTOLL[tripPeriod]/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +183,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +184,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +185,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +186,,Walk - Time up to 1 mile,,"c_walkTimeShort*min(walk_dist*60/walkSpeed, walkThresh*60/walkSpeed)",od +187,,Walk - Time beyond 1 mile,,"c_walkTimeLong*max(walk_dist*60/walkSpeed - walkThresh*60/walkSpeed, 0)",od +188,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +189,,Walk - Topology,,c_topology_walk*tripTopology, +190,,Bike - Unavailable if didn't bike to work,(subtour==1)*(tourModeIsBike==0),1, +191,,Bike - Time up to 6 miles,,"c_bikeTimeShort*min(bike_dist*60/bikeSpeed, bikeThresh*60/bikeSpeed)",od +192,,Bike - Time beyond 6 of a miles,,"c_bikeTimeLong*max(bike_dist*60/bikeSpeed - bikeThresh*60/bikeSpeed, 0)",od +193,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +194,,Bike - Topology,,c_topology_bike*tripTopology, +195,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +196,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*WLK_TRN_WLK_IVT_LOC[tripPeriod]/100,od +197,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*WLK_TRN_WLK_IVT_EXP[tripPeriod]/100,od +198,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*WLK_TRN_WLK_IVT_LRT[tripPeriod]/100,od +199,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*WLK_TRN_WLK_IVT_FRY[tripPeriod]/100,od +200,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*WLK_TRN_WLK_IVT_HVY[tripPeriod]/100,od +201,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*WLK_TRN_WLK_IVT_COM[tripPeriod]/100,od +202,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiWait*min(WLK_TRN_WLKIWAIT[tripPeriod]/100,waitThresh)",od +203,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiWait*max(WLK_TRN_WLKIWAIT[tripPeriod]/100-waitThresh,0)",od +204,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*WLK_TRN_WLKXWAIT[tripPeriod]/100,od +205,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*max(WLK_TRN_WLKBOARDS[tripPeriod]-1,0)",od +206,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*originWalkTime, +207,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*destinationWalkTime, +208,,Walk to Transit - Walk other time,walkTransitAvailable,c_waux*WLK_TRN_WLKWAUX[tripPeriod]/100,od +209,,Walk to Transit - Fare,walkTransitAvailable,"c_cost*WLK_TRN_WLKFAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)",od +210,,Walk to Transit - Destination zone densityIndex,walkTransitAvailable,c_densityIndex*densityIndex, +211,,Walk to Transit - Topology,walkTransitAvailable,c_topology_trn*tripTopology, +212,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Park and Ride Transit - Unavailable (outbound),outbound,(pnrAvailableOutbound)==0, +214,,Park and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +215,,Park and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +216,,Park and Ride Transit - In-vehicle time (outbound),pnrAvailableOutbound,c_ivt*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +217,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),pnrAvailableOutbound,(c_ivt_com-c_ivt)*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +218,,Park and Ride Transit - Short iwait time (outbound),pnrAvailableOutbound,"c_shortiWait*min(PNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +219,,Park and Ride Transit - Long iwait time (outbound),pnrAvailableOutbound,"c_longiWait*max(PNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +220,,Park and Ride Transit - transfer wait time (outbound),pnrAvailableOutbound,c_xwait*PNR_TRN_WLK_XWAIT[tripPeriod]/100,od +221,,Park and Ride Transit - number of transfers (outbound),pnrAvailableOutbound,"c_xfers_drv*max(PNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +222,,Park and Ride Transit - Drive time (outbound),pnrAvailableOutbound,c_dtim*PNR_TRN_WLK_DTIM[tripPeriod]/100,od +223,,Park and Ride Transit - Walk egress time (outbound),pnrAvailableOutbound,c_wegr*destinationWalkTime, +224,,Park and Ride Transit - Walk other time (outbound),pnrAvailableOutbound,c_waux*PNR_TRN_WLK_WAUX[tripPeriod]/100,od +225,,Park and Ride Transit - Fare and operating cost (outbound),pnrAvailableOutbound,"c_cost*(PNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(PNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +226,,Park and Ride Transit - Ratio of drive access distance to OD distance (outbound),pnrAvailableOutbound,c_dacc_ratio*(PNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +227,,Park and Ride Transit - Destination zone densityIndex (outbound),pnrAvailableOutbound,c_densityIndex*densityIndex, +228,,Park and Ride Transit - Topology (outbound),pnrAvailableOutbound,c_topology_trn*tripTopology, +229,,Park and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +230,,Park and Ride Transit - Unavailable,inbound,(pnrAvailableInbound)==0, +231,,Park and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +232,,Park and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +233,,Park and Ride Transit - In-vehicle time,pnrAvailableInbound,c_ivt*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +234,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),pnrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +235,,Park and Ride Transit - Short iwait time,pnrAvailableInbound,"c_shortiWait*min(WLK_TRN_PNR_IWAIT[tripPeriod]/100,waitThresh)",od +236,,Park and Ride Transit - Long iwait time,pnrAvailableInbound,"c_longiWait*max(WLK_TRN_PNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +237,,Park and Ride Transit - transfer wait time,pnrAvailableInbound,c_xwait*WLK_TRN_PNR_XWAIT[tripPeriod]/100,od +238,,Park and Ride Transit - number of transfers,pnrAvailableInbound,"c_xfers_drv*max(WLK_TRN_PNR_BOARDS[tripPeriod]-1,0)",od +239,,Park and Ride Transit - Drive time,pnrAvailableInbound,c_dtim*WLK_TRN_PNR_DTIM[tripPeriod]/100,od +240,,Park and Ride Transit - Walk access time (inbound),pnrAvailableInbound,c_wacc*originWalkTime, +241,,Park and Ride Transit - Walk other time,pnrAvailableInbound,c_waux*WLK_TRN_PNR_WAUX[tripPeriod]/100,od +242,,Park and Ride Transit - Fare and operating cost,pnrAvailableInbound,"c_cost*(WLK_TRN_PNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_PNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +243,,Park and Ride Transit - Ratio of drive access distance to OD distance,pnrAvailableInbound,c_dacc_ratio*(WLK_TRN_PNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +244,,Park and Ride Transit - Destination zone densityIndex,pnrAvailableInbound,c_densityIndex*densityIndex, +245,,Park and Ride Transit - Topology,pnrAvailableInbound,c_topology_trn*tripTopology, +246,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +247,,Kiss and Ride Transit - Unavailable (outbound),outbound,(knrAvailableOutbound)==0, +248,,Kiss and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +249,,Kiss and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +250,,Kiss and Ride Transit - In-vehicle time (outbound),knrAvailableOutbound,c_ivt*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +251,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),knrAvailableOutbound,(c_ivt_com-c_ivt)*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +252,,Kiss and Ride Transit - Short iwait time (outbound),knrAvailableOutbound,"c_shortiWait*min(KNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +253,,Kiss and Ride Transit - Long iwait time (outbound),knrAvailableOutbound,"c_longiWait*max(KNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +254,,Kiss and Ride Transit - transfer wait time (outbound),knrAvailableOutbound,c_xwait*KNR_TRN_WLK_XWAIT[tripPeriod]/100,od +255,,Kiss and Ride Transit - number of transfers (outbound),knrAvailableOutbound,"c_xfers_drv*max(KNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +256,,Kiss and Ride Transit - Drive time (outbound),knrAvailableOutbound,c_dtim*KNR_TRN_WLK_DTIM[tripPeriod]/100,od +257,,Kiss and Ride Transit - Walk egress time (outbound),knrAvailableOutbound,c_wegr*destinationWalkTime, +258,,Kiss and Ride Transit - Walk other time (outbound),knrAvailableOutbound,c_waux*KNR_TRN_WLK_WAUX[tripPeriod]/100,od +259,,Kiss and Ride Transit - Fare and operating cost (outbound),knrAvailableOutbound,"c_cost*(KNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(KNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +260,,Kiss and Ride Transit - Ratio of drive access distance to OD distance (outbound),knrAvailableOutbound,c_dacc_ratio*(KNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +261,,Kiss and Ride Transit - Destination zone densityIndex (outbound),knrAvailableOutbound,c_densityIndex*densityIndex, +262,,Kiss and Ride Transit - Topology (outbound),knrAvailableOutbound,c_topology_trn*tripTopology, +263,,Kiss and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +264,,Kiss and Ride Transit - Unavailable,inbound,(knrAvailableInbound)==0, +265,,Kiss and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +266,,Kiss and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +267,,Kiss and Ride Transit - In-vehicle time,knrAvailableInbound,c_ivt*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +268,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),knrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +269,,Kiss and Ride Transit - Short iwait time,knrAvailableInbound,"c_shortiWait*min(WLK_TRN_KNR_IWAIT[tripPeriod]/100,waitThresh)",od +270,,Kiss and Ride Transit - Long iwait time,knrAvailableInbound,"c_longiWait*max(WLK_TRN_KNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +271,,Kiss and Ride Transit - transfer wait time,knrAvailableInbound,c_xwait*WLK_TRN_KNR_XWAIT[tripPeriod]/100,od +272,,Kiss and Ride Transit - number of transfers,knrAvailableInbound,"c_xfers_drv*max(WLK_TRN_KNR_BOARDS[tripPeriod]-1,0)",od +273,,Kiss and Ride Transit - Drive time,knrAvailableInbound,c_dtim*WLK_TRN_KNR_DTIM[tripPeriod]/100,od +274,,Kiss and Ride Transit - Walk access time (inbound),knrAvailableInbound,c_wacc*originWalkTime, +275,,Kiss and Ride Transit - Walk other time,knrAvailableInbound,c_waux*WLK_TRN_KNR_WAUX[tripPeriod]/100,od +276,,Kiss and Ride Transit - Fare and operating cost,knrAvailableInbound,"c_cost*(WLK_TRN_KNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_KNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +277,,Kiss and Ride Transit - Ratio of drive access distance to OD distance,knrAvailableInbound,c_dacc_ratio*(WLK_TRN_KNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +278,,Kiss and Ride Transit - Destination zone densityIndex,knrAvailableInbound,c_densityIndex*densityIndex, +279,,Kiss and Ride Transit - Topology,knrAvailableInbound,c_topology_trn*tripTopology, +280,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +281,,Taxi - In-vehicle time,,c_ivt*HOV2_TIME[tripPeriod],od +282,,Taxi - Wait time,,c_ivt*1.5*@waitTimeTaxi, +283,,Taxi - Tolls,,c_cost*HOV2_VTOLL[tripPeriod],od +284,,Taxi - Bridge toll,,c_cost*HOV2_BTOLL[tripPeriod],od +285,,Taxi - Fare,,c_cost*(costInitialTaxi + HOV2_DIST[tripPeriod] * costPerMileTaxi + HOV2_DIST[tripPeriod] * costPerMinuteTaxi )*100,"od,od" +286,,Auto tour mode availability,tourModeIsAuto,1, +287,,Walk tour mode availability,tourModeIsWalk,1, +288,,Bike tour mode availability,tourModeIsBike,1, +289,,Walk to Transit tour mode availability,tourModeIsWalkTransit,1, +290,,Drive to Transit tour modes availability,tourModeIsDriveTransit,1, +291,,Ride Hail tour modes availability,tourModeIsRideHail,1, +292,,Drive Alone tour mode ASC -- shared ride 2,indivTour*(tourMode==1),-999, +293,,Drive Alone tour mode ASC -- shared ride 3+,indivTour*(tourMode==1),-999, +294,,Drive Alone tour mode ASC -- walk,indivTour*(tourMode==1),-20.424509892826499, +295,,Drive Alone tour mode ASC -- ride hail,indivTour*(tourMode==1),-7, +296,,Shared Ride 2 tour mode ASC -- shared ride 2,indivTour*(tourMode==2),0.138963274259018, +297,,Shared Ride 2 tour mode ASC -- shared ride 3+,indivTour*(tourMode==2),-999, +298,,Shared Ride 2 tour mode ASC -- walk,indivTour*(tourMode==2),-0.31389822091724101, +299,,Shared Ride 2 tour mode ASC -- ride hail,indivTour*(tourMode==2),-7, +300,,Shared Ride 3+ tour mode ASC -- shared ride 2,indivTour*(tourMode==3),-0.54741977143629195, +301,,Shared Ride 3+ tour mode ASC -- shared ride 3+,indivTour*(tourMode==3),-1.4919035101870501E-2, +302,,Shared Ride 3+ tour mode ASC -- walk,indivTour*(tourMode==3),-0.39003957711760201, +303,,Shared Ride 3+ tour mode ASC -- ride hail,indivTour*(tourMode==3),-107.43956048344501, +304,,Walk tour mode ASC -- ride hail,indivTour*tourModeIsWalk,-7, +305,,Bike tour mode ASC -- walk,indivTour*tourModeIsBike,-10.153436763870699, +306,,Bike tour mode ASC -- ride hail,indivTour*tourModeIsBike,-7, +307,,Walk to Transit tour mode ASC -- transit,indivTour*tourModeIsWalkTransit,0.85560272226612, +308,,Walk to Transit tour mode ASC -- shared ride 2,indivTour*tourModeIsWalkTransit,-3.70009322635266, +309,,Walk to Transit tour mode ASC -- shared ride 3+,indivTour*tourModeIsWalkTransit,-4.0840016501087, +310,,Walk to Transit tour mode ASC -- walk,indivTour*tourModeIsWalkTransit,2.1996281914776898, +311,,Walk to Transit tour mode ASC -- ride hail,indivTour*tourModeIsWalkTransit,-2.2395745968381902, +312,,Drive to Transit tour mode ASC -- drive to transit,indivTour*tourModeIsDriveTransit,2.0859181492209098, +313,,Drive to Transit tour mode ASC -- ride hail,indivTour*tourModeIsDriveTransit,-1.2625869372018199, +314,,Ride Hail tour mode ASC -- shared ride 2,indivTour*tourModeIsRideHail,-2.2145610603410799, +315,,Ride Hail tour mode ASC -- shared ride 3+,indivTour*tourModeIsRideHail,-3.8718673959859702, +316,,Ride Hail tour mode ASC -- walk,indivTour*tourModeIsRideHail,-1.3523144019203772, +317,,Ride Hail tour mode ASC -- walk to transit,indivTour*tourModeIsRideHail,-3.4047752635151101, +318,,Ride Hail tour mode ASC -- taxi,indivTour*tourModeIsRideHail,-7, +319,,Walk not available for long distances,(tourMode!=4)*(walk_dist>3),1,od +320,,Bike not available for long distances,(tourMode!=5)*(bike_dist>8),1,od +321,,"Origin density index, walk, bike, walk-transit, TNC",originDensityApplied,"max(c_originDensityIndex*originDensityIndex,c_originDensityIndexMax)", +322,,Walk-express penalty for intermediate stops,(stopIsFirst+stopIsLast)<2,-0.27900000000000003, diff --git a/utilities/make-mode-choice/update-trip-othmaint.csv b/utilities/make-mode-choice/update-trip-othmaint.csv new file mode 100644 index 000000000..85affd778 --- /dev/null +++ b/utilities/make-mode-choice/update-trip-othmaint.csv @@ -0,0 +1,323 @@ +row_number,token,description,filter,formula,index +1,c_ivt,In-vehicle time coefficient,,-2.7900000000000001E-2, +2,c_ivt_lrt,In-vehicle time coefficient on light rail,,-2.511E-2, +3,c_ivt_ferry,In-vehicle time coefficient on ferry,,-2.232E-2, +4,c_ivt_exp,In-vehicle time coefficient on express bus,,-1.7500000000000002E-2, +5,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,-2.232E-2, +6,c_ivt_com,In-vehicle time coefficient on commuter rail,,-2.232E-2, +7,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,-5.5800000000000002E-2, +8,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,-2.7900000000000001E-2, +9,c_wacc,Walk access time coefficient,,-5.5800000000000002E-2, +10,c_wegr,Walk egress time coefficient,,-5.5800000000000002E-2, +11,c_waux,Walk auxilliary time coefficient,,-5.5800000000000002E-2, +12,c_dtim,Drive access time coefficient,,-5.5800000000000002E-2, +13,c_xfers_wlk,"Transfer penalty, walk",,15.00 * c_ivt, +14,c_xfers_drv,"Transfer penalty, drive-transit",,20.00 * c_ivt, +15,c_xwait,Transfer wait time coefficient,,-5.5800000000000002E-2, +16,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,-5.5800000000000002E-2, +17,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,-0.27900000000000003, +18,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,-0.1116, +19,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,-0.55800000000000005, +20,vot,Value of Time,,@valueOfTime, +21,c_cost,"Cost coefficient, derived from Value of Time",,(0.6*c_ivt)/vot, +22,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +23,c_topology_walk,"Topology dummy coefficient, applied to walk",,-0.41849999999999998, +24,c_topology_bike,"Topology dummy coefficient, applied to bike",,-0.55800000000000005, +25,c_topology_trn,"Topology dummy coefficient, applied to transit",,-6.1379999999999997E-2, +26,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,5.5799999999999903E-3, +27,c_originDensityIndex,"Origin density index coef, applied to walk, bike, walk-transit",,1.6739999999999901E-2, +28,c_originDensityIndexMax,Maximum effect of origin density index,,0.41849999999999998, +29,c_age1619_da,Age 16-19--Drive Alone,,0, +30,c_age010_trn,Age 0-10--Transit,,0, +31,c_age16p_sr,Age 16+ -- Shared Ride,,0, +32,c_hhsize1_sr,Household Size 1--Shared Ride,,-0.73460000000000003, +33,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +34,freeParkingAllowed,Free parking is allowed for this purpose,,0, +35,costPerMile,Auto operating cost per mile,,18.29, +36,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +37,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +38,waitThresh,Wait time threshold to segment coefficients (minutes of wait),,10, +39,walkThresh,Walk threshold to segment coefficients (miles),,1, +40,walkSpeed,Walk speed (miles per hour),,3, +41,bikeThresh,Bike threshold to segment coefficients (miles),,6, +42,bikeSpeed,Bike speed (miles per hour),,12, +43,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333298, +44,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666596, +45,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +46,upperEA,Upper limit on time of day for the Early morning time period,,5, +47,upperAM,Upper limit on time of day for the AM peak time period,,9, +48,upperMD,Upper limit on time of day for the Midday time period,,14, +49,upperPM,Upper limit on time of day for the PM peak time period,,18, +50,upperEV,Upper limit on time of day for the Evening time period,,21, +51,autos,Household autos,,@autos, +52,workers,Household workers,,@workers, +53,hhSize,Household size (number of persons),,@hhSize, +54,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +55,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +56,age,Person age,,@age, +57,timeOfDay,Time of day for trip,,@tripTimeOfDay, +58,destZoneAreaType,Area type,,@areaType, +59,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +60,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +61,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +62,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +63,jointTour,Joint tour,,@tourCategoryJoint, +64,numberOfParticipantsInJointTour,Number of participants in joint tour,jointTour,@numberOfParticipantsInJointTour, +65,indivTour,Individual tour,jointTour==0,1, +66,subtour,Work based subtour,,@tourCategorySubtour, +67,tourMode,Primary tour mode integer code,,@tourMode, +68,tourModeIsSOV,Primary tour mode is auto,,@tourModeIsSOV, +69,tourModeIsAuto,Primary tour mode is auto,,@tourModeIsAuto, +70,tourModeIsWalk,Primary tour mode is walk,,@tourModeIsWalk, +71,tourModeIsBike,Primary tour mode is bike,,@tourModeIsBike, +72,tourModeIsWalkTransit,Primary tour mode is walk to transit,,@tourModeIsWalkTransit, +73,tourModeIsDriveTransit,Primary tour mode is drive to transit,,@tourModeIsDriveTransit, +74,tourModeIsRideHail,Primary tour mode is ride hailing,,@tourModeIsRideHail, +75,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed==1,@freeParking, +76,inbound,Stop is in inbound direction,,@tripIsInbound, +77,outbound,Stop is in outbound direction,,1-inbound, +78,stopIsFirst,First stop on half-tour,,@stopIsFirst, +79,stopIsLast,Last stop on half-tour,,@stopIsLast, +80,originTerminalTime,Terminal time (minutes) at origin,,@terminalTimeAtOrigin, +81,originTerminalTime,Terminal time (minutes) at origin--not counted at home,(inbound==0)*(stopIsFirst==1),0, +82,destTerminalTime,Terminal time (minutes) at destination,,@terminalTimeAtDestination, +83,destTerminalTime,Terminal time (minutes) at destination--not counted at home,(inbound==1)*(stopIsLast==1),0, +84,totalTerminalTime,Total Terminal time (minutes),,(originTerminalTime+destTerminalTime), +85,originHourlyParkingCost,Peak hourly parking cost at trip origin,,@hourlyPeakParkingCostAtOrigin, +86,destHourlyParkingCost,Peak hourly parking cost at trip destination,,@hourlyPeakParkingCostAtDestination, +87,tourDuration,Full duration of tour,,@tourDuration, +88,originDuration,Stop Duration if Origin of trip is at home,(inbound==0)*(stopIsFirst==1),0, +89,originDuration,Stop Duration if Origin of trip is at primary destination,(inbound==1)*(stopIsFirst==1)*(freeParkingAvailable==2),tourDuration, +90,originDuration,Stop Duration Origin of tirp is at an intermediate stop,stopIsFirst==0,1, +91,destDuration,Stop Duration if Destination of trip is at home,(inbound==1)*(stopIsLast==1),0, +92,destDuration,Stop Duration if Destination of trip is at primary destination,(inbound==0)*(stopIsLast==1)*(freeParkingAvailable==2),tourDuration, +93,destDuration,Stop Duration if Destination of trip is at an intermediate sotp,stopIsLast==0,1, +94,originParkingCost,Parking cost at trip origin,,originDuration*originHourlyParkingCost, +95,destParkingCost,Parking cost at trip destination,,destDuration*destHourlyParkingCost, +96,totalParkingCost,Total parking cost,,(originParkingCost+destParkingCost)/2, +97,tripTopology,Zone topology,,"if(inbound==1,@originTopology,@destinationTopology)", +98,originDensityIndex,Origin density index,,"if(inbound==1,@destinationDensityIndex,@originDensityIndex)", +99,originDensityApplied,Origin density index matters for this purpose,,1, +100,densityIndex,Zone density index (hhdens*empdens)/(hhdens+empdens),,"if(inbound==1,@originDensityIndex,@destinationDensityIndex)", +101,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +102,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +103,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +104,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +105,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +106,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA,1,0)*if(timeOfDay<=upperAM,2,0)", +130,tripPeriod,"trip departs in MD period, set index to 3",tripPeriod==0,"if(timeOfDay>upperAM,1,0)*if(timeOfDay<=upperMD,3,0)", +131,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperMD,1,0)*if(timeOfDay<=upperPM,4,0)", +132,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperPM,1,0)*if(timeOfDay<=upperNT,5,0)", +133,tripPeriod,"trip departs in EV period, set index to 5",tripPeriod==0,"if(timeOfDay>upperNT,6,0)", +134,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +135,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +136,walkTransitPossible,Walk to transit is available,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +137,driveTransitPossible,Drive to transit is available,outbound,walkTransitDest*(1-zeroAutoHh), +138,driveTransitPossible,Drive to transit is available,inbound,walkTransitOrig*(1-zeroAutoHh), +139,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +140,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +141,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +142,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +143,walk_dist,Walking distance,,DISTWALK,od +144,bike_dist,Biking distance,,DISTBIKE,od +145,sovAvailable,SOV mode is available,,"if(SOV_TIME[tripPeriod]>0,1,0)",od +146,hov2Available,HOV 2 mode is available,,"if(HOV2_TIME[tripPeriod]>0,1,0)",od +147,hov3Available,HOV 3+ mode is available,,"if(HOV3_TIME[tripPeriod]>0,1,0)",od +148,walkTransitAvailable,Walk local mode is available,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +149,pnrTransitAvailable,Park and ride transit is available for outbound tour,driveTransitPossible*(tourMode==7)*outbound,(PNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +150,pnrTransitAvailable,Park and ride transit is available for inbound tour,driveTransitPossible*(tourMode==7)*inbound,(WKL_TRN_PNR_TOTIVT[tripPeriod]/100>0),od +151,knrTransitAvailable,Kiss and ride transit is available for outbound tour,driveTransitPossible*(tourMode==8)*outbound,(KNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +152,knrTransitAvailable,Kiss and ride transit is available for inbound tour,driveTransitPossible*(tourMode==8)*inbound,(WKL_TRN_KNR_TOTIVT[tripPeriod]/100>0),od +153,,Drive alone - Unavailable,,sovAvailable==0, +154,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +155,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16) * (useAV==0),1, +156,,Drive alone - Unavailable for joint tours,jointTour==1,1, +157,,Drive alone - Unavailable if didn't drive to work,subtour==1,tourModeIsSOV==0, +158,,Drive alone - In-vehicle time,sovAvailable,c_ivt*SOV_TIME[tripPeriod]*autoIVTFactor,od +159,,Drive alone - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +160,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*SOV_DIST[tripPeriod])*autoCPMFactor,od +161,,Drive alone - Parking cost,sovAvailable,c_cost*totalParkingCost*autoParkingCostFactor, +162,,Drive alone - Bridge toll,sovAvailable,c_cost*SOV_BTOLL[tripPeriod],od +163,,Drive alone - Value toll,sovAvailable,"c_cost*SOV_VTOLL[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +164,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +165,,Shared ride 2 - Unavailable,,hov2Available==0, +166,,Shared ride 2 - Unavailable based on party size,jointTour==1,numberOfParticipantsInJointTour>2, +167,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*HOV2_TIME[tripPeriod]*autoIVTFactor,od +168,,Shared ride 2 - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +169,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*HOV2_DIST[tripPeriod])*autoCPMFactor,od +170,,Shared ride 2 - Parking cost,hov2Available,c_cost*totalParkingCost/costShareSr2*autoParkingCostFactor, +171,,Shared ride 2 - Bridge toll,hov2Available,c_cost*HOV2_BTOLL[tripPeriod]/costShareSr2,od +172,,Shared ride 2 - Value toll,hov2Available,"c_cost*HOV2_VTOLL[tripPeriod]/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +173,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +174,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +175,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +176,,Shared ride 3+ - Unavailable,,hov3Available==0, +177,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*HOV3_TIME[tripPeriod]*autoIVTFactor,od +178,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +179,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*HOV3_DIST[tripPeriod])*autoCPMFactor,od +180,,Shared ride 3+ - Parking cost,hov3Available,c_cost*totalParkingCost/costShareSr3*autoParkingCostFactor, +181,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*HOV3_BTOLL[tripPeriod]/costShareSr3,od +182,,Shared ride 3+ - Value toll,hov3Available,"c_cost*HOV3_VTOLL[tripPeriod]/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +183,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +184,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +185,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +186,,Walk - Time up to 1 mile,,"c_walkTimeShort*min(walk_dist*60/walkSpeed, walkThresh*60/walkSpeed)",od +187,,Walk - Time beyond 1 mile,,"c_walkTimeLong*max(walk_dist*60/walkSpeed - walkThresh*60/walkSpeed, 0)",od +188,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +189,,Walk - Topology,,c_topology_walk*tripTopology, +190,,Bike - Unavailable if didn't bike to work,(subtour==1)*(tourModeIsBike==0),1, +191,,Bike - Time up to 6 miles,,"c_bikeTimeShort*min(bike_dist*60/bikeSpeed, bikeThresh*60/bikeSpeed)",od +192,,Bike - Time beyond 6 of a miles,,"c_bikeTimeLong*max(bike_dist*60/bikeSpeed - bikeThresh*60/bikeSpeed, 0)",od +193,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +194,,Bike - Topology,,c_topology_bike*tripTopology, +195,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +196,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*WLK_TRN_WLK_IVT_LOC[tripPeriod]/100,od +197,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*WLK_TRN_WLK_IVT_EXP[tripPeriod]/100,od +198,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*WLK_TRN_WLK_IVT_LRT[tripPeriod]/100,od +199,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*WLK_TRN_WLK_IVT_FRY[tripPeriod]/100,od +200,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*WLK_TRN_WLK_IVT_HVY[tripPeriod]/100,od +201,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*WLK_TRN_WLK_IVT_COM[tripPeriod]/100,od +202,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiWait*min(WLK_TRN_WLKIWAIT[tripPeriod]/100,waitThresh)",od +203,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiWait*max(WLK_TRN_WLKIWAIT[tripPeriod]/100-waitThresh,0)",od +204,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*WLK_TRN_WLKXWAIT[tripPeriod]/100,od +205,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*max(WLK_TRN_WLKBOARDS[tripPeriod]-1,0)",od +206,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*originWalkTime, +207,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*destinationWalkTime, +208,,Walk to Transit - Walk other time,walkTransitAvailable,c_waux*WLK_TRN_WLKWAUX[tripPeriod]/100,od +209,,Walk to Transit - Fare,walkTransitAvailable,"c_cost*WLK_TRN_WLKFAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)",od +210,,Walk to Transit - Destination zone densityIndex,walkTransitAvailable,c_densityIndex*densityIndex, +211,,Walk to Transit - Topology,walkTransitAvailable,c_topology_trn*tripTopology, +212,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Park and Ride Transit - Unavailable (outbound),outbound,(pnrAvailableOutbound)==0, +214,,Park and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +215,,Park and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +216,,Park and Ride Transit - In-vehicle time (outbound),pnrAvailableOutbound,c_ivt*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +217,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),pnrAvailableOutbound,(c_ivt_com-c_ivt)*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +218,,Park and Ride Transit - Short iwait time (outbound),pnrAvailableOutbound,"c_shortiWait*min(PNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +219,,Park and Ride Transit - Long iwait time (outbound),pnrAvailableOutbound,"c_longiWait*max(PNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +220,,Park and Ride Transit - transfer wait time (outbound),pnrAvailableOutbound,c_xwait*PNR_TRN_WLK_XWAIT[tripPeriod]/100,od +221,,Park and Ride Transit - number of transfers (outbound),pnrAvailableOutbound,"c_xfers_drv*max(PNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +222,,Park and Ride Transit - Drive time (outbound),pnrAvailableOutbound,c_dtim*PNR_TRN_WLK_DTIM[tripPeriod]/100,od +223,,Park and Ride Transit - Walk egress time (outbound),pnrAvailableOutbound,c_wegr*destinationWalkTime, +224,,Park and Ride Transit - Walk other time (outbound),pnrAvailableOutbound,c_waux*PNR_TRN_WLK_WAUX[tripPeriod]/100,od +225,,Park and Ride Transit - Fare and operating cost (outbound),pnrAvailableOutbound,"c_cost*(PNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(PNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +226,,Park and Ride Transit - Ratio of drive access distance to OD distance (outbound),pnrAvailableOutbound,c_dacc_ratio*(PNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +227,,Park and Ride Transit - Destination zone densityIndex (outbound),pnrAvailableOutbound,c_densityIndex*densityIndex, +228,,Park and Ride Transit - Topology (outbound),pnrAvailableOutbound,c_topology_trn*tripTopology, +229,,Park and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +230,,Park and Ride Transit - Unavailable,inbound,(pnrAvailableInbound)==0, +231,,Park and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +232,,Park and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +233,,Park and Ride Transit - In-vehicle time,pnrAvailableInbound,c_ivt*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +234,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),pnrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +235,,Park and Ride Transit - Short iwait time,pnrAvailableInbound,"c_shortiWait*min(WLK_TRN_PNR_IWAIT[tripPeriod]/100,waitThresh)",od +236,,Park and Ride Transit - Long iwait time,pnrAvailableInbound,"c_longiWait*max(WLK_TRN_PNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +237,,Park and Ride Transit - transfer wait time,pnrAvailableInbound,c_xwait*WLK_TRN_PNR_XWAIT[tripPeriod]/100,od +238,,Park and Ride Transit - number of transfers,pnrAvailableInbound,"c_xfers_drv*max(WLK_TRN_PNR_BOARDS[tripPeriod]-1,0)",od +239,,Park and Ride Transit - Drive time,pnrAvailableInbound,c_dtim*WLK_TRN_PNR_DTIM[tripPeriod]/100,od +240,,Park and Ride Transit - Walk access time (inbound),pnrAvailableInbound,c_wacc*originWalkTime, +241,,Park and Ride Transit - Walk other time,pnrAvailableInbound,c_waux*WLK_TRN_PNR_WAUX[tripPeriod]/100,od +242,,Park and Ride Transit - Fare and operating cost,pnrAvailableInbound,"c_cost*(WLK_TRN_PNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_PNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +243,,Park and Ride Transit - Ratio of drive access distance to OD distance,pnrAvailableInbound,c_dacc_ratio*(WLK_TRN_PNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +244,,Park and Ride Transit - Destination zone densityIndex,pnrAvailableInbound,c_densityIndex*densityIndex, +245,,Park and Ride Transit - Topology,pnrAvailableInbound,c_topology_trn*tripTopology, +246,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +247,,Kiss and Ride Transit - Unavailable (outbound),outbound,(knrAvailableOutbound)==0, +248,,Kiss and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +249,,Kiss and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +250,,Kiss and Ride Transit - In-vehicle time (outbound),knrAvailableOutbound,c_ivt*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +251,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),knrAvailableOutbound,(c_ivt_com-c_ivt)*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +252,,Kiss and Ride Transit - Short iwait time (outbound),knrAvailableOutbound,"c_shortiWait*min(KNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +253,,Kiss and Ride Transit - Long iwait time (outbound),knrAvailableOutbound,"c_longiWait*max(KNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +254,,Kiss and Ride Transit - transfer wait time (outbound),knrAvailableOutbound,c_xwait*KNR_TRN_WLK_XWAIT[tripPeriod]/100,od +255,,Kiss and Ride Transit - number of transfers (outbound),knrAvailableOutbound,"c_xfers_drv*max(KNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +256,,Kiss and Ride Transit - Drive time (outbound),knrAvailableOutbound,c_dtim*KNR_TRN_WLK_DTIM[tripPeriod]/100,od +257,,Kiss and Ride Transit - Walk egress time (outbound),knrAvailableOutbound,c_wegr*destinationWalkTime, +258,,Kiss and Ride Transit - Walk other time (outbound),knrAvailableOutbound,c_waux*KNR_TRN_WLK_WAUX[tripPeriod]/100,od +259,,Kiss and Ride Transit - Fare and operating cost (outbound),knrAvailableOutbound,"c_cost*(KNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(KNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +260,,Kiss and Ride Transit - Ratio of drive access distance to OD distance (outbound),knrAvailableOutbound,c_dacc_ratio*(KNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +261,,Kiss and Ride Transit - Destination zone densityIndex (outbound),knrAvailableOutbound,c_densityIndex*densityIndex, +262,,Kiss and Ride Transit - Topology (outbound),knrAvailableOutbound,c_topology_trn*tripTopology, +263,,Kiss and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +264,,Kiss and Ride Transit - Unavailable,inbound,(knrAvailableInbound)==0, +265,,Kiss and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +266,,Kiss and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +267,,Kiss and Ride Transit - In-vehicle time,knrAvailableInbound,c_ivt*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +268,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),knrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +269,,Kiss and Ride Transit - Short iwait time,knrAvailableInbound,"c_shortiWait*min(WLK_TRN_KNR_IWAIT[tripPeriod]/100,waitThresh)",od +270,,Kiss and Ride Transit - Long iwait time,knrAvailableInbound,"c_longiWait*max(WLK_TRN_KNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +271,,Kiss and Ride Transit - transfer wait time,knrAvailableInbound,c_xwait*WLK_TRN_KNR_XWAIT[tripPeriod]/100,od +272,,Kiss and Ride Transit - number of transfers,knrAvailableInbound,"c_xfers_drv*max(WLK_TRN_KNR_BOARDS[tripPeriod]-1,0)",od +273,,Kiss and Ride Transit - Drive time,knrAvailableInbound,c_dtim*WLK_TRN_KNR_DTIM[tripPeriod]/100,od +274,,Kiss and Ride Transit - Walk access time (inbound),knrAvailableInbound,c_wacc*originWalkTime, +275,,Kiss and Ride Transit - Walk other time,knrAvailableInbound,c_waux*WLK_TRN_KNR_WAUX[tripPeriod]/100,od +276,,Kiss and Ride Transit - Fare and operating cost,knrAvailableInbound,"c_cost*(WLK_TRN_KNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_KNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +277,,Kiss and Ride Transit - Ratio of drive access distance to OD distance,knrAvailableInbound,c_dacc_ratio*(WLK_TRN_KNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +278,,Kiss and Ride Transit - Destination zone densityIndex,knrAvailableInbound,c_densityIndex*densityIndex, +279,,Kiss and Ride Transit - Topology,knrAvailableInbound,c_topology_trn*tripTopology, +280,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +281,,Taxi - In-vehicle time,,c_ivt*HOV2_TIME[tripPeriod],od +282,,Taxi - Wait time,,c_ivt*1.5*@waitTimeTaxi, +283,,Taxi - Tolls,,c_cost*HOV2_VTOLL[tripPeriod],od +284,,Taxi - Bridge toll,,c_cost*HOV2_BTOLL[tripPeriod],od +285,,Taxi - Fare,,c_cost*(costInitialTaxi + HOV2_DIST[tripPeriod] * costPerMileTaxi + HOV2_DIST[tripPeriod] * costPerMinuteTaxi )*100,"od,od" +286,,Auto tour mode availability,tourModeIsAuto,1, +287,,Walk tour mode availability,tourModeIsWalk,1, +288,,Bike tour mode availability,tourModeIsBike,1, +289,,Walk to Transit tour mode availability,tourModeIsWalkTransit,1, +290,,Drive to Transit tour modes availability,tourModeIsDriveTransit,1, +291,,Ride Hail tour modes availability,tourModeIsRideHail,1, +292,,Drive Alone tour mode ASC -- shared ride 2,indivTour*(tourMode==1),-999, +293,,Drive Alone tour mode ASC -- shared ride 3+,indivTour*(tourMode==1),-999, +294,,Drive Alone tour mode ASC -- walk,indivTour*(tourMode==1),-20.424509892826499, +295,,Drive Alone tour mode ASC -- ride hail,indivTour*(tourMode==1),-7, +296,,Shared Ride 2 tour mode ASC -- shared ride 2,indivTour*(tourMode==2),0.138963274259018, +297,,Shared Ride 2 tour mode ASC -- shared ride 3+,indivTour*(tourMode==2),-999, +298,,Shared Ride 2 tour mode ASC -- walk,indivTour*(tourMode==2),-0.31389822091724101, +299,,Shared Ride 2 tour mode ASC -- ride hail,indivTour*(tourMode==2),-7, +300,,Shared Ride 3+ tour mode ASC -- shared ride 2,indivTour*(tourMode==3),-0.54741977143629195, +301,,Shared Ride 3+ tour mode ASC -- shared ride 3+,indivTour*(tourMode==3),-1.4919035101870501E-2, +302,,Shared Ride 3+ tour mode ASC -- walk,indivTour*(tourMode==3),-0.39003957711760201, +303,,Shared Ride 3+ tour mode ASC -- ride hail,indivTour*(tourMode==3),-107.43956048344501, +304,,Walk tour mode ASC -- ride hail,indivTour*tourModeIsWalk,-7, +305,,Bike tour mode ASC -- walk,indivTour*tourModeIsBike,-10.153436763870699, +306,,Bike tour mode ASC -- ride hail,indivTour*tourModeIsBike,-7, +307,,Walk to Transit tour mode ASC -- transit,indivTour*tourModeIsWalkTransit,0.85560272226612, +308,,Walk to Transit tour mode ASC -- shared ride 2,indivTour*tourModeIsWalkTransit,-3.70009322635266, +309,,Walk to Transit tour mode ASC -- shared ride 3+,indivTour*tourModeIsWalkTransit,-4.0840016501087, +310,,Walk to Transit tour mode ASC -- walk,indivTour*tourModeIsWalkTransit,2.1996281914776898, +311,,Walk to Transit tour mode ASC -- ride hail,indivTour*tourModeIsWalkTransit,-2.2395745968381902, +312,,Drive to Transit tour mode ASC -- drive to transit,indivTour*tourModeIsDriveTransit,2.0859181492209098, +313,,Drive to Transit tour mode ASC -- ride hail,indivTour*tourModeIsDriveTransit,-1.2625869372018199, +314,,Ride Hail tour mode ASC -- shared ride 2,indivTour*tourModeIsRideHail,-2.2145610603410799, +315,,Ride Hail tour mode ASC -- shared ride 3+,indivTour*tourModeIsRideHail,-7, +316,,Ride Hail tour mode ASC -- walk,indivTour*tourModeIsRideHail,-7, +317,,Ride Hail tour mode ASC -- walk to transit,indivTour*tourModeIsRideHail,-3.4047752635151101, +318,,Ride Hail tour mode ASC -- taxi,indivTour*tourModeIsRideHail,-7, +319,,Walk not available for long distances,(tourMode!=4)*(walk_dist>3),1,od +320,,Bike not available for long distances,(tourMode!=5)*(bike_dist>8),1,od +321,,"Origin density index, walk, bike, walk-transit, TNC",originDensityApplied,"max(c_originDensityIndex*originDensityIndex,c_originDensityIndexMax)", +322,,Walk-express penalty for intermediate stops,(stopIsFirst+stopIsLast)<2,-0.27900000000000003, diff --git a/utilities/make-mode-choice/update-trip-school.csv b/utilities/make-mode-choice/update-trip-school.csv new file mode 100644 index 000000000..1d402b456 --- /dev/null +++ b/utilities/make-mode-choice/update-trip-school.csv @@ -0,0 +1,323 @@ +row_number,token,description,filter,formula,index +1,c_ivt,In-vehicle time coefficient,,-2.7099999999999999E-2, +2,c_ivt_lrt,In-vehicle time coefficient on light rail,,-2.4389999999999998E-2, +3,c_ivt_ferry,In-vehicle time coefficient on ferry,,-2.1680000000000001E-2, +4,c_ivt_exp,In-vehicle time coefficient on express bus,,-1.7500000000000002E-2, +5,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,-2.1680000000000001E-2, +6,c_ivt_com,In-vehicle time coefficient on commuter rail,,-2.1680000000000001E-2, +7,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,-5.4199999999999998E-2, +8,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,-2.7099999999999999E-2, +9,c_wacc,Walk access time coefficient,,-5.4199999999999998E-2, +10,c_wegr,Walk egress time coefficient,,-5.4199999999999998E-2, +11,c_waux,Walk auxilliary time coefficient,,-5.4199999999999998E-2, +12,c_dtim,Drive access time coefficient,,-5.4199999999999998E-2, +13,c_xfers_wlk,"Transfer penalty, walk",,15.00 * c_ivt, +14,c_xfers_drv,"Transfer penalty, drive-transit",,20.00 * c_ivt, +15,c_xwait,Transfer wait time coefficient,,-5.4199999999999998E-2, +16,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,-5.4199999999999998E-2, +17,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,-0.27100000000000002, +18,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,-0.1084, +19,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,-0.54200000000000004, +20,vot,Value of Time,,@valueOfTime, +21,c_cost,"Cost coefficient, derived from Value of Time",,(0.6*c_ivt)/vot, +22,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +23,c_topology_walk,"Topology dummy coefficient, applied to walk",,-0.40649999999999997, +24,c_topology_bike,"Topology dummy coefficient, applied to bike",,-0.54200000000000004, +25,c_topology_trn,"Topology dummy coefficient, applied to transit",,-5.9619999999999999E-2, +26,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,5.4199999999999995E-3, +27,c_originDensityIndex,"Origin density index coef, applied to walk, bike, walk-transit",,1.6259999999999997E-2, +28,c_originDensityIndexMax,Maximum effect of origin density index,,0.40649999999999997, +29,c_age1619_da,Age 16-19--Drive Alone,,0, +30,c_age010_trn,Age 0-10--Transit,,0, +31,c_age16p_sr,Age 16+ -- Shared Ride,,0, +32,c_hhsize1_sr,Household Size 1--Shared Ride,,-0.73460000000000003, +33,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +34,freeParkingAllowed,Free parking is allowed for this purpose,,0, +35,costPerMile,Auto operating cost per mile,,18.29, +36,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +37,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +38,waitThresh,Wait time threshold to segment coefficients (minutes of wait),,10, +39,walkThresh,Walk threshold to segment coefficients (miles),,1, +40,walkSpeed,Walk speed (miles per hour),,3, +41,bikeThresh,Bike threshold to segment coefficients (miles),,6, +42,bikeSpeed,Bike speed (miles per hour),,12, +43,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333331, +44,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666663, +45,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +46,upperEA,Upper limit on time of day for the Early morning time period,,5, +47,upperAM,Upper limit on time of day for the AM peak time period,,9, +48,upperMD,Upper limit on time of day for the Midday time period,,14, +49,upperPM,Upper limit on time of day for the PM peak time period,,18, +50,upperEV,Upper limit on time of day for the Evening time period,,21, +51,autos,Household autos,,@autos, +52,workers,Household workers,,@workers, +53,hhSize,Household size (number of persons),,@hhSize, +54,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +55,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +56,age,Person age,,@age, +57,timeOfDay,Time of day for trip,,@tripTimeOfDay, +58,destZoneAreaType,Area type,,@areaType, +59,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +60,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +61,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +62,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +63,jointTour,Joint tour,,@tourCategoryJoint, +64,numberOfParticipantsInJointTour,Number of participants in joint tour,jointTour,@numberOfParticipantsInJointTour, +65,indivTour,Individual tour,jointTour==0,1, +66,subtour,Work based subtour,,@tourCategorySubtour, +67,tourMode,Primary tour mode integer code,,@tourMode, +68,tourModeIsSOV,Primary tour mode is auto,,@tourModeIsSOV, +69,tourModeIsAuto,Primary tour mode is auto,,@tourModeIsAuto, +70,tourModeIsWalk,Primary tour mode is walk,,@tourModeIsWalk, +71,tourModeIsBike,Primary tour mode is bike,,@tourModeIsBike, +72,tourModeIsWalkTransit,Primary tour mode is walk to transit,,@tourModeIsWalkTransit, +73,tourModeIsDriveTransit,Primary tour mode is drive to transit,,@tourModeIsDriveTransit, +74,tourModeIsRideHail,Primary tour mode is ride hailing,,@tourModeIsRideHail, +75,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed==1,@freeParking, +76,inbound,Stop is in inbound direction,,@tripIsInbound, +77,outbound,Stop is in outbound direction,,1-inbound, +78,stopIsFirst,First stop on half-tour,,@stopIsFirst, +79,stopIsLast,Last stop on half-tour,,@stopIsLast, +80,originTerminalTime,Terminal time (minutes) at origin,,@terminalTimeAtOrigin, +81,originTerminalTime,Terminal time (minutes) at origin--not counted at home,(inbound==0)*(stopIsFirst==1),0, +82,destTerminalTime,Terminal time (minutes) at destination,,@terminalTimeAtDestination, +83,destTerminalTime,Terminal time (minutes) at destination--not counted at home,(inbound==1)*(stopIsLast==1),0, +84,totalTerminalTime,Total Terminal time (minutes),,(originTerminalTime+destTerminalTime), +85,originHourlyParkingCost,Peak hourly parking cost at trip origin,,@hourlyPeakParkingCostAtOrigin, +86,destHourlyParkingCost,Peak hourly parking cost at trip destination,,@hourlyPeakParkingCostAtDestination, +87,tourDuration,Full duration of tour,,@tourDuration, +88,originDuration,Stop Duration if Origin of trip is at home,(inbound==0)*(stopIsFirst==1),0, +89,originDuration,Stop Duration if Origin of trip is at primary destination,(inbound==1)*(stopIsFirst==1)*(freeParkingAvailable==2),tourDuration, +90,originDuration,Stop Duration Origin of tirp is at an intermediate stop,stopIsFirst==0,1, +91,destDuration,Stop Duration if Destination of trip is at home,(inbound==1)*(stopIsLast==1),0, +92,destDuration,Stop Duration if Destination of trip is at primary destination,(inbound==0)*(stopIsLast==1)*(freeParkingAvailable==2),tourDuration, +93,destDuration,Stop Duration if Destination of trip is at an intermediate sotp,stopIsLast==0,1, +94,originParkingCost,Parking cost at trip origin,,originDuration*originHourlyParkingCost, +95,destParkingCost,Parking cost at trip destination,,destDuration*destHourlyParkingCost, +96,totalParkingCost,Total parking cost,,(originParkingCost+destParkingCost)/2, +97,tripTopology,Zone topology,,"if(inbound==1,@originTopology,@destinationTopology)", +98,originDensityIndex,Origin density index,,"if(inbound==1,@destinationDensityIndex,@originDensityIndex)", +99,originDensityApplied,Origin density index matters for this purpose,,0, +100,densityIndex,Zone density index (hhdens*empdens)/(hhdens+empdens),,"if(inbound==1,@originDensityIndex,@destinationDensityIndex)", +101,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +102,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +103,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +104,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +105,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +106,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA,1,0)*if(timeOfDay<=upperAM,2,0)", +130,tripPeriod,"trip departs in MD period, set index to 3",tripPeriod==0,"if(timeOfDay>upperAM,1,0)*if(timeOfDay<=upperMD,3,0)", +131,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperMD,1,0)*if(timeOfDay<=upperPM,4,0)", +132,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperPM,1,0)*if(timeOfDay<=upperNT,5,0)", +133,tripPeriod,"trip departs in EV period, set index to 5",tripPeriod==0,"if(timeOfDay>upperNT,6,0)", +134,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +135,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +136,walkTransitPossible,Walk to transit is available,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +137,driveTransitPossible,Drive to transit is available,outbound,walkTransitDest*(1-zeroAutoHh), +138,driveTransitPossible,Drive to transit is available,inbound,walkTransitOrig*(1-zeroAutoHh), +139,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +140,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +141,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +142,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +143,walk_dist,Walking distance,,DISTWALK,od +144,bike_dist,Biking distance,,DISTBIKE,od +145,sovAvailable,SOV mode is available,,"if(SOV_TIME[tripPeriod]>0,1,0)",od +146,hov2Available,HOV 2 mode is available,,"if(HOV2_TIME[tripPeriod]>0,1,0)",od +147,hov3Available,HOV 3+ mode is available,,"if(HOV3_TIME[tripPeriod]>0,1,0)",od +148,walkTransitAvailable,Walk local mode is available,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +149,pnrTransitAvailable,Park and ride transit is available for outbound tour,driveTransitPossible*(tourMode==7)*outbound,(PNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +150,pnrTransitAvailable,Park and ride transit is available for inbound tour,driveTransitPossible*(tourMode==7)*inbound,(WKL_TRN_PNR_TOTIVT[tripPeriod]/100>0),od +151,knrTransitAvailable,Kiss and ride transit is available for outbound tour,driveTransitPossible*(tourMode==8)*outbound,(KNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +152,knrTransitAvailable,Kiss and ride transit is available for inbound tour,driveTransitPossible*(tourMode==8)*inbound,(WKL_TRN_KNR_TOTIVT[tripPeriod]/100>0),od +153,,Drive alone - Unavailable,,sovAvailable==0, +154,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +155,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16) * (useAV==0),1, +156,,Drive alone - Unavailable for joint tours,jointTour==1,1, +157,,Drive alone - Unavailable if didn't drive to work,subtour==1,tourModeIsSOV==0, +158,,Drive alone - In-vehicle time,sovAvailable,c_ivt*SOV_TIME[tripPeriod]*autoIVTFactor,od +159,,Drive alone - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +160,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*SOV_DIST[tripPeriod])*autoCPMFactor,od +161,,Drive alone - Parking cost,sovAvailable,c_cost*totalParkingCost*autoParkingCostFactor, +162,,Drive alone - Bridge toll,sovAvailable,c_cost*SOV_BTOLL[tripPeriod],od +163,,Drive alone - Value toll,sovAvailable,"c_cost*SOV_VTOLL[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +164,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +165,,Shared ride 2 - Unavailable,,hov2Available==0, +166,,Shared ride 2 - Unavailable based on party size,jointTour==1,numberOfParticipantsInJointTour>2, +167,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*HOV2_TIME[tripPeriod]*autoIVTFactor,od +168,,Shared ride 2 - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +169,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*HOV2_DIST[tripPeriod])*autoCPMFactor,od +170,,Shared ride 2 - Parking cost,hov2Available,c_cost*totalParkingCost/costShareSr2*autoParkingCostFactor, +171,,Shared ride 2 - Bridge toll,hov2Available,c_cost*HOV2_BTOLL[tripPeriod]/costShareSr2,od +172,,Shared ride 2 - Value toll,hov2Available,"c_cost*HOV2_VTOLL[tripPeriod]/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +173,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +174,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +175,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +176,,Shared ride 3+ - Unavailable,,hov3Available==0, +177,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*HOV3_TIME[tripPeriod]*autoIVTFactor,od +178,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +179,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*HOV3_DIST[tripPeriod])*autoCPMFactor,od +180,,Shared ride 3+ - Parking cost,hov3Available,c_cost*totalParkingCost/costShareSr3*autoParkingCostFactor, +181,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*HOV3_BTOLL[tripPeriod]/costShareSr3,od +182,,Shared ride 3+ - Value toll,hov3Available,"c_cost*HOV3_VTOLL[tripPeriod]/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +183,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +184,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +185,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +186,,Walk - Time up to 1 mile,,"c_walkTimeShort*min(walk_dist*60/walkSpeed, walkThresh*60/walkSpeed)",od +187,,Walk - Time beyond 1 mile,,"c_walkTimeLong*max(walk_dist*60/walkSpeed - walkThresh*60/walkSpeed, 0)",od +188,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +189,,Walk - Topology,,c_topology_walk*tripTopology, +190,,Bike - Unavailable if didn't bike to work,(subtour==1)*(tourModeIsBike==0),1, +191,,Bike - Time up to 6 miles,,"c_bikeTimeShort*min(bike_dist*60/bikeSpeed, bikeThresh*60/bikeSpeed)",od +192,,Bike - Time beyond 6 of a miles,,"c_bikeTimeLong*max(bike_dist*60/bikeSpeed - bikeThresh*60/bikeSpeed, 0)",od +193,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +194,,Bike - Topology,,c_topology_bike*tripTopology, +195,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +196,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*WLK_TRN_WLK_IVT_LOC[tripPeriod]/100,od +197,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*WLK_TRN_WLK_IVT_EXP[tripPeriod]/100,od +198,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*WLK_TRN_WLK_IVT_LRT[tripPeriod]/100,od +199,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*WLK_TRN_WLK_IVT_FRY[tripPeriod]/100,od +200,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*WLK_TRN_WLK_IVT_HVY[tripPeriod]/100,od +201,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*WLK_TRN_WLK_IVT_COM[tripPeriod]/100,od +202,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiWait*min(WLK_TRN_WLKIWAIT[tripPeriod]/100,waitThresh)",od +203,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiWait*max(WLK_TRN_WLKIWAIT[tripPeriod]/100-waitThresh,0)",od +204,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*WLK_TRN_WLKXWAIT[tripPeriod]/100,od +205,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*max(WLK_TRN_WLKBOARDS[tripPeriod]-1,0)",od +206,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*originWalkTime, +207,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*destinationWalkTime, +208,,Walk to Transit - Walk other time,walkTransitAvailable,c_waux*WLK_TRN_WLKWAUX[tripPeriod]/100,od +209,,Walk to Transit - Fare,walkTransitAvailable,"c_cost*WLK_TRN_WLKFAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)",od +210,,Walk to Transit - Destination zone densityIndex,walkTransitAvailable,c_densityIndex*densityIndex, +211,,Walk to Transit - Topology,walkTransitAvailable,c_topology_trn*tripTopology, +212,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Park and Ride Transit - Unavailable (outbound),outbound,(pnrAvailableOutbound)==0, +214,,Park and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +215,,Park and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +216,,Park and Ride Transit - In-vehicle time (outbound),pnrAvailableOutbound,c_ivt*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +217,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),pnrAvailableOutbound,(c_ivt_com-c_ivt)*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +218,,Park and Ride Transit - Short iwait time (outbound),pnrAvailableOutbound,"c_shortiWait*min(PNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +219,,Park and Ride Transit - Long iwait time (outbound),pnrAvailableOutbound,"c_longiWait*max(PNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +220,,Park and Ride Transit - transfer wait time (outbound),pnrAvailableOutbound,c_xwait*PNR_TRN_WLK_XWAIT[tripPeriod]/100,od +221,,Park and Ride Transit - number of transfers (outbound),pnrAvailableOutbound,"c_xfers_drv*max(PNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +222,,Park and Ride Transit - Drive time (outbound),pnrAvailableOutbound,c_dtim*PNR_TRN_WLK_DTIM[tripPeriod]/100,od +223,,Park and Ride Transit - Walk egress time (outbound),pnrAvailableOutbound,c_wegr*destinationWalkTime, +224,,Park and Ride Transit - Walk other time (outbound),pnrAvailableOutbound,c_waux*PNR_TRN_WLK_WAUX[tripPeriod]/100,od +225,,Park and Ride Transit - Fare and operating cost (outbound),pnrAvailableOutbound,"c_cost*(PNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(PNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +226,,Park and Ride Transit - Ratio of drive access distance to OD distance (outbound),pnrAvailableOutbound,c_dacc_ratio*(PNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +227,,Park and Ride Transit - Destination zone densityIndex (outbound),pnrAvailableOutbound,c_densityIndex*densityIndex, +228,,Park and Ride Transit - Topology (outbound),pnrAvailableOutbound,c_topology_trn*tripTopology, +229,,Park and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +230,,Park and Ride Transit - Unavailable,inbound,(pnrAvailableInbound)==0, +231,,Park and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +232,,Park and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +233,,Park and Ride Transit - In-vehicle time,pnrAvailableInbound,c_ivt*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +234,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),pnrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +235,,Park and Ride Transit - Short iwait time,pnrAvailableInbound,"c_shortiWait*min(WLK_TRN_PNR_IWAIT[tripPeriod]/100,waitThresh)",od +236,,Park and Ride Transit - Long iwait time,pnrAvailableInbound,"c_longiWait*max(WLK_TRN_PNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +237,,Park and Ride Transit - transfer wait time,pnrAvailableInbound,c_xwait*WLK_TRN_PNR_XWAIT[tripPeriod]/100,od +238,,Park and Ride Transit - number of transfers,pnrAvailableInbound,"c_xfers_drv*max(WLK_TRN_PNR_BOARDS[tripPeriod]-1,0)",od +239,,Park and Ride Transit - Drive time,pnrAvailableInbound,c_dtim*WLK_TRN_PNR_DTIM[tripPeriod]/100,od +240,,Park and Ride Transit - Walk access time (inbound),pnrAvailableInbound,c_wacc*originWalkTime, +241,,Park and Ride Transit - Walk other time,pnrAvailableInbound,c_waux*WLK_TRN_PNR_WAUX[tripPeriod]/100,od +242,,Park and Ride Transit - Fare and operating cost,pnrAvailableInbound,"c_cost*(WLK_TRN_PNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_PNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +243,,Park and Ride Transit - Ratio of drive access distance to OD distance,pnrAvailableInbound,c_dacc_ratio*(WLK_TRN_PNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +244,,Park and Ride Transit - Destination zone densityIndex,pnrAvailableInbound,c_densityIndex*densityIndex, +245,,Park and Ride Transit - Topology,pnrAvailableInbound,c_topology_trn*tripTopology, +246,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +247,,Kiss and Ride Transit - Unavailable (outbound),outbound,(knrAvailableOutbound)==0, +248,,Kiss and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +249,,Kiss and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +250,,Kiss and Ride Transit - In-vehicle time (outbound),knrAvailableOutbound,c_ivt*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +251,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),knrAvailableOutbound,(c_ivt_com-c_ivt)*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +252,,Kiss and Ride Transit - Short iwait time (outbound),knrAvailableOutbound,"c_shortiWait*min(KNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +253,,Kiss and Ride Transit - Long iwait time (outbound),knrAvailableOutbound,"c_longiWait*max(KNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +254,,Kiss and Ride Transit - transfer wait time (outbound),knrAvailableOutbound,c_xwait*KNR_TRN_WLK_XWAIT[tripPeriod]/100,od +255,,Kiss and Ride Transit - number of transfers (outbound),knrAvailableOutbound,"c_xfers_drv*max(KNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +256,,Kiss and Ride Transit - Drive time (outbound),knrAvailableOutbound,c_dtim*KNR_TRN_WLK_DTIM[tripPeriod]/100,od +257,,Kiss and Ride Transit - Walk egress time (outbound),knrAvailableOutbound,c_wegr*destinationWalkTime, +258,,Kiss and Ride Transit - Walk other time (outbound),knrAvailableOutbound,c_waux*KNR_TRN_WLK_WAUX[tripPeriod]/100,od +259,,Kiss and Ride Transit - Fare and operating cost (outbound),knrAvailableOutbound,"c_cost*(KNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(KNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +260,,Kiss and Ride Transit - Ratio of drive access distance to OD distance (outbound),knrAvailableOutbound,c_dacc_ratio*(KNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +261,,Kiss and Ride Transit - Destination zone densityIndex (outbound),knrAvailableOutbound,c_densityIndex*densityIndex, +262,,Kiss and Ride Transit - Topology (outbound),knrAvailableOutbound,c_topology_trn*tripTopology, +263,,Kiss and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +264,,Kiss and Ride Transit - Unavailable,inbound,(knrAvailableInbound)==0, +265,,Kiss and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +266,,Kiss and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +267,,Kiss and Ride Transit - In-vehicle time,knrAvailableInbound,c_ivt*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +268,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),knrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +269,,Kiss and Ride Transit - Short iwait time,knrAvailableInbound,"c_shortiWait*min(WLK_TRN_KNR_IWAIT[tripPeriod]/100,waitThresh)",od +270,,Kiss and Ride Transit - Long iwait time,knrAvailableInbound,"c_longiWait*max(WLK_TRN_KNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +271,,Kiss and Ride Transit - transfer wait time,knrAvailableInbound,c_xwait*WLK_TRN_KNR_XWAIT[tripPeriod]/100,od +272,,Kiss and Ride Transit - number of transfers,knrAvailableInbound,"c_xfers_drv*max(WLK_TRN_KNR_BOARDS[tripPeriod]-1,0)",od +273,,Kiss and Ride Transit - Drive time,knrAvailableInbound,c_dtim*WLK_TRN_KNR_DTIM[tripPeriod]/100,od +274,,Kiss and Ride Transit - Walk access time (inbound),knrAvailableInbound,c_wacc*originWalkTime, +275,,Kiss and Ride Transit - Walk other time,knrAvailableInbound,c_waux*WLK_TRN_KNR_WAUX[tripPeriod]/100,od +276,,Kiss and Ride Transit - Fare and operating cost,knrAvailableInbound,"c_cost*(WLK_TRN_KNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_KNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +277,,Kiss and Ride Transit - Ratio of drive access distance to OD distance,knrAvailableInbound,c_dacc_ratio*(WLK_TRN_KNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +278,,Kiss and Ride Transit - Destination zone densityIndex,knrAvailableInbound,c_densityIndex*densityIndex, +279,,Kiss and Ride Transit - Topology,knrAvailableInbound,c_topology_trn*tripTopology, +280,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +281,,Taxi - In-vehicle time,,c_ivt*HOV2_TIME[tripPeriod],od +282,,Taxi - Wait time,,c_ivt*1.5*@waitTimeTaxi, +283,,Taxi - Tolls,,c_cost*HOV2_VTOLL[tripPeriod],od +284,,Taxi - Bridge toll,,c_cost*HOV2_BTOLL[tripPeriod],od +285,,Taxi - Fare,,c_cost*(costInitialTaxi + HOV2_DIST[tripPeriod] * costPerMileTaxi + HOV2_DIST[tripPeriod] * costPerMinuteTaxi )*100,"od,od" +286,,Auto tour mode availability,tourModeIsAuto,1, +287,,Walk tour mode availability,tourModeIsWalk,1, +288,,Bike tour mode availability,tourModeIsBike,1, +289,,Walk to Transit tour mode availability,tourModeIsWalkTransit,1, +290,,Drive to Transit tour modes availability,tourModeIsDriveTransit,1, +291,,Ride Hail tour modes availability,tourModeIsRideHail,1, +292,,Drive Alone tour mode ASC -- shared ride 2,indivTour*(tourMode==1),-999, +293,,Drive Alone tour mode ASC -- shared ride 3+,indivTour*(tourMode==1),-999, +294,,Drive Alone tour mode ASC -- walk,indivTour*(tourMode==1),-20.424509892826542, +295,,Drive Alone tour mode ASC -- ride hail,indivTour*(tourMode==1),-7, +296,,Shared Ride 2 tour mode ASC -- shared ride 2,indivTour*(tourMode==2),0.13896327425901844, +297,,Shared Ride 2 tour mode ASC -- shared ride 3+,indivTour*(tourMode==2),-999, +298,,Shared Ride 2 tour mode ASC -- walk,indivTour*(tourMode==2),-0.31389822091724112, +299,,Shared Ride 2 tour mode ASC -- ride hail,indivTour*(tourMode==2),-7, +300,,Shared Ride 3+ tour mode ASC -- shared ride 2,indivTour*(tourMode==3),-0.54741977143629272, +301,,Shared Ride 3+ tour mode ASC -- shared ride 3+,indivTour*(tourMode==3),-1.491903510187052E-2, +302,,Shared Ride 3+ tour mode ASC -- walk,indivTour*(tourMode==3),-0.39003957711760229, +303,,Shared Ride 3+ tour mode ASC -- ride hail,indivTour*(tourMode==3),-107.43956048344576, +304,,Walk tour mode ASC -- ride hail,indivTour*tourModeIsWalk,-7, +305,,Bike tour mode ASC -- walk,indivTour*tourModeIsBike,-10.778488852487111, +306,,Bike tour mode ASC -- ride hail,indivTour*tourModeIsBike,-7, +307,,Walk to Transit tour mode ASC -- transit,indivTour*tourModeIsWalkTransit,0.85560272226612022, +308,,Walk to Transit tour mode ASC -- shared ride 2,indivTour*tourModeIsWalkTransit,-3.1900261513426047, +309,,Walk to Transit tour mode ASC -- shared ride 3+,indivTour*tourModeIsWalkTransit,-3.4228750232604703, +310,,Walk to Transit tour mode ASC -- walk,indivTour*tourModeIsWalkTransit,-0.40548932812630645, +311,,Walk to Transit tour mode ASC -- ride hail,indivTour*tourModeIsWalkTransit,-7, +312,,Drive to Transit tour mode ASC -- drive to transit,indivTour*tourModeIsDriveTransit,2.0859181492209142, +313,,Drive to Transit tour mode ASC -- ride hail,indivTour*tourModeIsDriveTransit,-2.6792232267662159, +314,,Ride Hail tour mode ASC -- shared ride 2,indivTour*tourModeIsRideHail,-1.2256488522781979, +315,,Ride Hail tour mode ASC -- shared ride 3+,indivTour*tourModeIsRideHail,-2.3155138871218437, +316,,Ride Hail tour mode ASC -- walk,indivTour*tourModeIsRideHail,0.61984619118278861, +317,,Ride Hail tour mode ASC -- walk to transit,indivTour*tourModeIsRideHail,0, +318,,Ride Hail tour mode ASC -- taxi,indivTour*tourModeIsRideHail,-0.59879755193905637, +319,,Walk not available for long distances,(tourMode!=4)*(walk_dist>3),1,od +320,,Bike not available for long distances,(tourMode!=5)*(bike_dist>8),1,od +321,,"Origin density index, walk, bike, walk-transit, TNC",originDensityApplied,"max(c_originDensityIndex*originDensityIndex,c_originDensityIndexMax)", +322,,Walk-express penalty for intermediate stops,(stopIsFirst+stopIsLast)<2,-0.27100000000000002, diff --git a/utilities/make-mode-choice/update-trip-shopping.csv b/utilities/make-mode-choice/update-trip-shopping.csv new file mode 100644 index 000000000..48eb80acb --- /dev/null +++ b/utilities/make-mode-choice/update-trip-shopping.csv @@ -0,0 +1,323 @@ +row_number,token,description,filter,formula,index +1,c_ivt,In-vehicle time coefficient,,-2.7900000000000001E-2, +2,c_ivt_lrt,In-vehicle time coefficient on light rail,,-2.511E-2, +3,c_ivt_ferry,In-vehicle time coefficient on ferry,,-2.2320000000000003E-2, +4,c_ivt_exp,In-vehicle time coefficient on express bus,,-1.7500000000000002E-2, +5,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,-2.2320000000000003E-2, +6,c_ivt_com,In-vehicle time coefficient on commuter rail,,-2.2320000000000003E-2, +7,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,-5.5800000000000002E-2, +8,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,-2.7900000000000001E-2, +9,c_wacc,Walk access time coefficient,,-5.5800000000000002E-2, +10,c_wegr,Walk egress time coefficient,,-5.5800000000000002E-2, +11,c_waux,Walk auxilliary time coefficient,,-5.5800000000000002E-2, +12,c_dtim,Drive access time coefficient,,-5.5800000000000002E-2, +13,c_xfers_wlk,"Transfer penalty, walk",,15.00 * c_ivt, +14,c_xfers_drv,"Transfer penalty, drive-transit",,20.00 * c_ivt, +15,c_xwait,Transfer wait time coefficient,,-5.5800000000000002E-2, +16,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,-5.5800000000000002E-2, +17,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,-0.27900000000000003, +18,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,-0.1116, +19,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,-0.55800000000000005, +20,vot,Value of Time,,@valueOfTime, +21,c_cost,"Cost coefficient, derived from Value of Time",,(0.6*c_ivt)/vot, +22,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +23,c_topology_walk,"Topology dummy coefficient, applied to walk",,-0.41850000000000004, +24,c_topology_bike,"Topology dummy coefficient, applied to bike",,-0.55800000000000005, +25,c_topology_trn,"Topology dummy coefficient, applied to transit",,-6.1380000000000011E-2, +26,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,5.5799999999999999E-3, +27,c_originDensityIndex,"Origin density index coef, applied to walk, bike, walk-transit",,1.6739999999999998E-2, +28,c_originDensityIndexMax,Maximum effect of origin density index,,0.41850000000000004, +29,c_age1619_da,Age 16-19--Drive Alone,,0, +30,c_age010_trn,Age 0-10--Transit,,0, +31,c_age16p_sr,Age 16+ -- Shared Ride,,0, +32,c_hhsize1_sr,Household Size 1--Shared Ride,,-0.73460000000000003, +33,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +34,freeParkingAllowed,Free parking is allowed for this purpose,,0, +35,costPerMile,Auto operating cost per mile,,18.29, +36,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +37,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +38,waitThresh,Wait time threshold to segment coefficients (minutes of wait),,10, +39,walkThresh,Walk threshold to segment coefficients (miles),,1, +40,walkSpeed,Walk speed (miles per hour),,3, +41,bikeThresh,Bike threshold to segment coefficients (miles),,6, +42,bikeSpeed,Bike speed (miles per hour),,12, +43,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333331, +44,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666663, +45,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +46,upperEA,Upper limit on time of day for the Early morning time period,,5, +47,upperAM,Upper limit on time of day for the AM peak time period,,9, +48,upperMD,Upper limit on time of day for the Midday time period,,14, +49,upperPM,Upper limit on time of day for the PM peak time period,,18, +50,upperEV,Upper limit on time of day for the Evening time period,,21, +51,autos,Household autos,,@autos, +52,workers,Household workers,,@workers, +53,hhSize,Household size (number of persons),,@hhSize, +54,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +55,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +56,age,Person age,,@age, +57,timeOfDay,Time of day for trip,,@tripTimeOfDay, +58,destZoneAreaType,Area type,,@areaType, +59,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +60,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +61,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +62,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +63,jointTour,Joint tour,,@tourCategoryJoint, +64,numberOfParticipantsInJointTour,Number of participants in joint tour,jointTour,@numberOfParticipantsInJointTour, +65,indivTour,Individual tour,jointTour==0,1, +66,subtour,Work based subtour,,@tourCategorySubtour, +67,tourMode,Primary tour mode integer code,,@tourMode, +68,tourModeIsSOV,Primary tour mode is auto,,@tourModeIsSOV, +69,tourModeIsAuto,Primary tour mode is auto,,@tourModeIsAuto, +70,tourModeIsWalk,Primary tour mode is walk,,@tourModeIsWalk, +71,tourModeIsBike,Primary tour mode is bike,,@tourModeIsBike, +72,tourModeIsWalkTransit,Primary tour mode is walk to transit,,@tourModeIsWalkTransit, +73,tourModeIsDriveTransit,Primary tour mode is drive to transit,,@tourModeIsDriveTransit, +74,tourModeIsRideHail,Primary tour mode is ride hailing,,@tourModeIsRideHail, +75,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed==1,@freeParking, +76,inbound,Stop is in inbound direction,,@tripIsInbound, +77,outbound,Stop is in outbound direction,,1-inbound, +78,stopIsFirst,First stop on half-tour,,@stopIsFirst, +79,stopIsLast,Last stop on half-tour,,@stopIsLast, +80,originTerminalTime,Terminal time (minutes) at origin,,@terminalTimeAtOrigin, +81,originTerminalTime,Terminal time (minutes) at origin--not counted at home,(inbound==0)*(stopIsFirst==1),0, +82,destTerminalTime,Terminal time (minutes) at destination,,@terminalTimeAtDestination, +83,destTerminalTime,Terminal time (minutes) at destination--not counted at home,(inbound==1)*(stopIsLast==1),0, +84,totalTerminalTime,Total Terminal time (minutes),,(originTerminalTime+destTerminalTime), +85,originHourlyParkingCost,Peak hourly parking cost at trip origin,,@hourlyPeakParkingCostAtOrigin, +86,destHourlyParkingCost,Peak hourly parking cost at trip destination,,@hourlyPeakParkingCostAtDestination, +87,tourDuration,Full duration of tour,,@tourDuration, +88,originDuration,Stop Duration if Origin of trip is at home,(inbound==0)*(stopIsFirst==1),0, +89,originDuration,Stop Duration if Origin of trip is at primary destination,(inbound==1)*(stopIsFirst==1)*(freeParkingAvailable==2),tourDuration, +90,originDuration,Stop Duration Origin of tirp is at an intermediate stop,stopIsFirst==0,1, +91,destDuration,Stop Duration if Destination of trip is at home,(inbound==1)*(stopIsLast==1),0, +92,destDuration,Stop Duration if Destination of trip is at primary destination,(inbound==0)*(stopIsLast==1)*(freeParkingAvailable==2),tourDuration, +93,destDuration,Stop Duration if Destination of trip is at an intermediate sotp,stopIsLast==0,1, +94,originParkingCost,Parking cost at trip origin,,originDuration*originHourlyParkingCost, +95,destParkingCost,Parking cost at trip destination,,destDuration*destHourlyParkingCost, +96,totalParkingCost,Total parking cost,,(originParkingCost+destParkingCost)/2, +97,tripTopology,Zone topology,,"if(inbound==1,@originTopology,@destinationTopology)", +98,originDensityIndex,Origin density index,,"if(inbound==1,@destinationDensityIndex,@originDensityIndex)", +99,originDensityApplied,Origin density index matters for this purpose,,1, +100,densityIndex,Zone density index (hhdens*empdens)/(hhdens+empdens),,"if(inbound==1,@originDensityIndex,@destinationDensityIndex)", +101,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +102,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +103,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +104,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +105,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +106,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA,1,0)*if(timeOfDay<=upperAM,2,0)", +130,tripPeriod,"trip departs in MD period, set index to 3",tripPeriod==0,"if(timeOfDay>upperAM,1,0)*if(timeOfDay<=upperMD,3,0)", +131,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperMD,1,0)*if(timeOfDay<=upperPM,4,0)", +132,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperPM,1,0)*if(timeOfDay<=upperNT,5,0)", +133,tripPeriod,"trip departs in EV period, set index to 5",tripPeriod==0,"if(timeOfDay>upperNT,6,0)", +134,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +135,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +136,walkTransitPossible,Walk to transit is available,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +137,driveTransitPossible,Drive to transit is available,outbound,walkTransitDest*(1-zeroAutoHh), +138,driveTransitPossible,Drive to transit is available,inbound,walkTransitOrig*(1-zeroAutoHh), +139,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +140,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +141,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +142,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +143,walk_dist,Walking distance,,DISTWALK,od +144,bike_dist,Biking distance,,DISTBIKE,od +145,sovAvailable,SOV mode is available,,"if(SOV_TIME[tripPeriod]>0,1,0)",od +146,hov2Available,HOV 2 mode is available,,"if(HOV2_TIME[tripPeriod]>0,1,0)",od +147,hov3Available,HOV 3+ mode is available,,"if(HOV3_TIME[tripPeriod]>0,1,0)",od +148,walkTransitAvailable,Walk local mode is available,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +149,pnrTransitAvailable,Park and ride transit is available for outbound tour,driveTransitPossible*(tourMode==7)*outbound,(PNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +150,pnrTransitAvailable,Park and ride transit is available for inbound tour,driveTransitPossible*(tourMode==7)*inbound,(WKL_TRN_PNR_TOTIVT[tripPeriod]/100>0),od +151,knrTransitAvailable,Kiss and ride transit is available for outbound tour,driveTransitPossible*(tourMode==8)*outbound,(KNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +152,knrTransitAvailable,Kiss and ride transit is available for inbound tour,driveTransitPossible*(tourMode==8)*inbound,(WKL_TRN_KNR_TOTIVT[tripPeriod]/100>0),od +153,,Drive alone - Unavailable,,sovAvailable==0, +154,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +155,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16) * (useAV==0),1, +156,,Drive alone - Unavailable for joint tours,jointTour==1,1, +157,,Drive alone - Unavailable if didn't drive to work,subtour==1,tourModeIsSOV==0, +158,,Drive alone - In-vehicle time,sovAvailable,c_ivt*SOV_TIME[tripPeriod]*autoIVTFactor,od +159,,Drive alone - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +160,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*SOV_DIST[tripPeriod])*autoCPMFactor,od +161,,Drive alone - Parking cost,sovAvailable,c_cost*totalParkingCost*autoParkingCostFactor, +162,,Drive alone - Bridge toll,sovAvailable,c_cost*SOV_BTOLL[tripPeriod],od +163,,Drive alone - Value toll,sovAvailable,"c_cost*SOV_VTOLL[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +164,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +165,,Shared ride 2 - Unavailable,,hov2Available==0, +166,,Shared ride 2 - Unavailable based on party size,jointTour==1,numberOfParticipantsInJointTour>2, +167,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*HOV2_TIME[tripPeriod]*autoIVTFactor,od +168,,Shared ride 2 - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +169,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*HOV2_DIST[tripPeriod])*autoCPMFactor,od +170,,Shared ride 2 - Parking cost,hov2Available,c_cost*totalParkingCost/costShareSr2*autoParkingCostFactor, +171,,Shared ride 2 - Bridge toll,hov2Available,c_cost*HOV2_BTOLL[tripPeriod]/costShareSr2,od +172,,Shared ride 2 - Value toll,hov2Available,"c_cost*HOV2_VTOLL[tripPeriod]/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +173,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +174,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +175,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +176,,Shared ride 3+ - Unavailable,,hov3Available==0, +177,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*HOV3_TIME[tripPeriod]*autoIVTFactor,od +178,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +179,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*HOV3_DIST[tripPeriod])*autoCPMFactor,od +180,,Shared ride 3+ - Parking cost,hov3Available,c_cost*totalParkingCost/costShareSr3*autoParkingCostFactor, +181,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*HOV3_BTOLL[tripPeriod]/costShareSr3,od +182,,Shared ride 3+ - Value toll,hov3Available,"c_cost*HOV3_VTOLL[tripPeriod]/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +183,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +184,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +185,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +186,,Walk - Time up to 1 mile,,"c_walkTimeShort*min(walk_dist*60/walkSpeed, walkThresh*60/walkSpeed)",od +187,,Walk - Time beyond 1 mile,,"c_walkTimeLong*max(walk_dist*60/walkSpeed - walkThresh*60/walkSpeed, 0)",od +188,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +189,,Walk - Topology,,c_topology_walk*tripTopology, +190,,Bike - Unavailable if didn't bike to work,(subtour==1)*(tourModeIsBike==0),1, +191,,Bike - Time up to 6 miles,,"c_bikeTimeShort*min(bike_dist*60/bikeSpeed, bikeThresh*60/bikeSpeed)",od +192,,Bike - Time beyond 6 of a miles,,"c_bikeTimeLong*max(bike_dist*60/bikeSpeed - bikeThresh*60/bikeSpeed, 0)",od +193,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +194,,Bike - Topology,,c_topology_bike*tripTopology, +195,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +196,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*WLK_TRN_WLK_IVT_LOC[tripPeriod]/100,od +197,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*WLK_TRN_WLK_IVT_EXP[tripPeriod]/100,od +198,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*WLK_TRN_WLK_IVT_LRT[tripPeriod]/100,od +199,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*WLK_TRN_WLK_IVT_FRY[tripPeriod]/100,od +200,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*WLK_TRN_WLK_IVT_HVY[tripPeriod]/100,od +201,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*WLK_TRN_WLK_IVT_COM[tripPeriod]/100,od +202,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiWait*min(WLK_TRN_WLKIWAIT[tripPeriod]/100,waitThresh)",od +203,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiWait*max(WLK_TRN_WLKIWAIT[tripPeriod]/100-waitThresh,0)",od +204,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*WLK_TRN_WLKXWAIT[tripPeriod]/100,od +205,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*max(WLK_TRN_WLKBOARDS[tripPeriod]-1,0)",od +206,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*originWalkTime, +207,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*destinationWalkTime, +208,,Walk to Transit - Walk other time,walkTransitAvailable,c_waux*WLK_TRN_WLKWAUX[tripPeriod]/100,od +209,,Walk to Transit - Fare,walkTransitAvailable,"c_cost*WLK_TRN_WLKFAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)",od +210,,Walk to Transit - Destination zone densityIndex,walkTransitAvailable,c_densityIndex*densityIndex, +211,,Walk to Transit - Topology,walkTransitAvailable,c_topology_trn*tripTopology, +212,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Park and Ride Transit - Unavailable (outbound),outbound,(pnrAvailableOutbound)==0, +214,,Park and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +215,,Park and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +216,,Park and Ride Transit - In-vehicle time (outbound),pnrAvailableOutbound,c_ivt*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +217,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),pnrAvailableOutbound,(c_ivt_com-c_ivt)*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +218,,Park and Ride Transit - Short iwait time (outbound),pnrAvailableOutbound,"c_shortiWait*min(PNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +219,,Park and Ride Transit - Long iwait time (outbound),pnrAvailableOutbound,"c_longiWait*max(PNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +220,,Park and Ride Transit - transfer wait time (outbound),pnrAvailableOutbound,c_xwait*PNR_TRN_WLK_XWAIT[tripPeriod]/100,od +221,,Park and Ride Transit - number of transfers (outbound),pnrAvailableOutbound,"c_xfers_drv*max(PNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +222,,Park and Ride Transit - Drive time (outbound),pnrAvailableOutbound,c_dtim*PNR_TRN_WLK_DTIM[tripPeriod]/100,od +223,,Park and Ride Transit - Walk egress time (outbound),pnrAvailableOutbound,c_wegr*destinationWalkTime, +224,,Park and Ride Transit - Walk other time (outbound),pnrAvailableOutbound,c_waux*PNR_TRN_WLK_WAUX[tripPeriod]/100,od +225,,Park and Ride Transit - Fare and operating cost (outbound),pnrAvailableOutbound,"c_cost*(PNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(PNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +226,,Park and Ride Transit - Ratio of drive access distance to OD distance (outbound),pnrAvailableOutbound,c_dacc_ratio*(PNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +227,,Park and Ride Transit - Destination zone densityIndex (outbound),pnrAvailableOutbound,c_densityIndex*densityIndex, +228,,Park and Ride Transit - Topology (outbound),pnrAvailableOutbound,c_topology_trn*tripTopology, +229,,Park and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +230,,Park and Ride Transit - Unavailable,inbound,(pnrAvailableInbound)==0, +231,,Park and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +232,,Park and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +233,,Park and Ride Transit - In-vehicle time,pnrAvailableInbound,c_ivt*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +234,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),pnrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +235,,Park and Ride Transit - Short iwait time,pnrAvailableInbound,"c_shortiWait*min(WLK_TRN_PNR_IWAIT[tripPeriod]/100,waitThresh)",od +236,,Park and Ride Transit - Long iwait time,pnrAvailableInbound,"c_longiWait*max(WLK_TRN_PNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +237,,Park and Ride Transit - transfer wait time,pnrAvailableInbound,c_xwait*WLK_TRN_PNR_XWAIT[tripPeriod]/100,od +238,,Park and Ride Transit - number of transfers,pnrAvailableInbound,"c_xfers_drv*max(WLK_TRN_PNR_BOARDS[tripPeriod]-1,0)",od +239,,Park and Ride Transit - Drive time,pnrAvailableInbound,c_dtim*WLK_TRN_PNR_DTIM[tripPeriod]/100,od +240,,Park and Ride Transit - Walk access time (inbound),pnrAvailableInbound,c_wacc*originWalkTime, +241,,Park and Ride Transit - Walk other time,pnrAvailableInbound,c_waux*WLK_TRN_PNR_WAUX[tripPeriod]/100,od +242,,Park and Ride Transit - Fare and operating cost,pnrAvailableInbound,"c_cost*(WLK_TRN_PNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_PNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +243,,Park and Ride Transit - Ratio of drive access distance to OD distance,pnrAvailableInbound,c_dacc_ratio*(WLK_TRN_PNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +244,,Park and Ride Transit - Destination zone densityIndex,pnrAvailableInbound,c_densityIndex*densityIndex, +245,,Park and Ride Transit - Topology,pnrAvailableInbound,c_topology_trn*tripTopology, +246,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +247,,Kiss and Ride Transit - Unavailable (outbound),outbound,(knrAvailableOutbound)==0, +248,,Kiss and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +249,,Kiss and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +250,,Kiss and Ride Transit - In-vehicle time (outbound),knrAvailableOutbound,c_ivt*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +251,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),knrAvailableOutbound,(c_ivt_com-c_ivt)*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +252,,Kiss and Ride Transit - Short iwait time (outbound),knrAvailableOutbound,"c_shortiWait*min(KNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +253,,Kiss and Ride Transit - Long iwait time (outbound),knrAvailableOutbound,"c_longiWait*max(KNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +254,,Kiss and Ride Transit - transfer wait time (outbound),knrAvailableOutbound,c_xwait*KNR_TRN_WLK_XWAIT[tripPeriod]/100,od +255,,Kiss and Ride Transit - number of transfers (outbound),knrAvailableOutbound,"c_xfers_drv*max(KNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +256,,Kiss and Ride Transit - Drive time (outbound),knrAvailableOutbound,c_dtim*KNR_TRN_WLK_DTIM[tripPeriod]/100,od +257,,Kiss and Ride Transit - Walk egress time (outbound),knrAvailableOutbound,c_wegr*destinationWalkTime, +258,,Kiss and Ride Transit - Walk other time (outbound),knrAvailableOutbound,c_waux*KNR_TRN_WLK_WAUX[tripPeriod]/100,od +259,,Kiss and Ride Transit - Fare and operating cost (outbound),knrAvailableOutbound,"c_cost*(KNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(KNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +260,,Kiss and Ride Transit - Ratio of drive access distance to OD distance (outbound),knrAvailableOutbound,c_dacc_ratio*(KNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +261,,Kiss and Ride Transit - Destination zone densityIndex (outbound),knrAvailableOutbound,c_densityIndex*densityIndex, +262,,Kiss and Ride Transit - Topology (outbound),knrAvailableOutbound,c_topology_trn*tripTopology, +263,,Kiss and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +264,,Kiss and Ride Transit - Unavailable,inbound,(knrAvailableInbound)==0, +265,,Kiss and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +266,,Kiss and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +267,,Kiss and Ride Transit - In-vehicle time,knrAvailableInbound,c_ivt*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +268,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),knrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +269,,Kiss and Ride Transit - Short iwait time,knrAvailableInbound,"c_shortiWait*min(WLK_TRN_KNR_IWAIT[tripPeriod]/100,waitThresh)",od +270,,Kiss and Ride Transit - Long iwait time,knrAvailableInbound,"c_longiWait*max(WLK_TRN_KNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +271,,Kiss and Ride Transit - transfer wait time,knrAvailableInbound,c_xwait*WLK_TRN_KNR_XWAIT[tripPeriod]/100,od +272,,Kiss and Ride Transit - number of transfers,knrAvailableInbound,"c_xfers_drv*max(WLK_TRN_KNR_BOARDS[tripPeriod]-1,0)",od +273,,Kiss and Ride Transit - Drive time,knrAvailableInbound,c_dtim*WLK_TRN_KNR_DTIM[tripPeriod]/100,od +274,,Kiss and Ride Transit - Walk access time (inbound),knrAvailableInbound,c_wacc*originWalkTime, +275,,Kiss and Ride Transit - Walk other time,knrAvailableInbound,c_waux*WLK_TRN_KNR_WAUX[tripPeriod]/100,od +276,,Kiss and Ride Transit - Fare and operating cost,knrAvailableInbound,"c_cost*(WLK_TRN_KNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_KNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +277,,Kiss and Ride Transit - Ratio of drive access distance to OD distance,knrAvailableInbound,c_dacc_ratio*(WLK_TRN_KNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +278,,Kiss and Ride Transit - Destination zone densityIndex,knrAvailableInbound,c_densityIndex*densityIndex, +279,,Kiss and Ride Transit - Topology,knrAvailableInbound,c_topology_trn*tripTopology, +280,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +281,,Taxi - In-vehicle time,,c_ivt*HOV2_TIME[tripPeriod],od +282,,Taxi - Wait time,,c_ivt*1.5*@waitTimeTaxi, +283,,Taxi - Tolls,,c_cost*HOV2_VTOLL[tripPeriod],od +284,,Taxi - Bridge toll,,c_cost*HOV2_BTOLL[tripPeriod],od +285,,Taxi - Fare,,c_cost*(costInitialTaxi + HOV2_DIST[tripPeriod] * costPerMileTaxi + HOV2_DIST[tripPeriod] * costPerMinuteTaxi )*100,"od,od" +286,,Auto tour mode availability,tourModeIsAuto,1, +287,,Walk tour mode availability,tourModeIsWalk,1, +288,,Bike tour mode availability,tourModeIsBike,1, +289,,Walk to Transit tour mode availability,tourModeIsWalkTransit,1, +290,,Drive to Transit tour modes availability,tourModeIsDriveTransit,1, +291,,Ride Hail tour modes availability,tourModeIsRideHail,1, +292,,Drive Alone tour mode ASC -- shared ride 2,indivTour*(tourMode==1),-999, +293,,Drive Alone tour mode ASC -- shared ride 3+,indivTour*(tourMode==1),-999, +294,,Drive Alone tour mode ASC -- walk,indivTour*(tourMode==1),-20.424509892826542, +295,,Drive Alone tour mode ASC -- ride hail,indivTour*(tourMode==1),-7, +296,,Shared Ride 2 tour mode ASC -- shared ride 2,indivTour*(tourMode==2),0.13896327425901844, +297,,Shared Ride 2 tour mode ASC -- shared ride 3+,indivTour*(tourMode==2),-999, +298,,Shared Ride 2 tour mode ASC -- walk,indivTour*(tourMode==2),-0.31389822091724112, +299,,Shared Ride 2 tour mode ASC -- ride hail,indivTour*(tourMode==2),-7, +300,,Shared Ride 3+ tour mode ASC -- shared ride 2,indivTour*(tourMode==3),-0.54741977143629272, +301,,Shared Ride 3+ tour mode ASC -- shared ride 3+,indivTour*(tourMode==3),-1.491903510187052E-2, +302,,Shared Ride 3+ tour mode ASC -- walk,indivTour*(tourMode==3),-0.39003957711760229, +303,,Shared Ride 3+ tour mode ASC -- ride hail,indivTour*(tourMode==3),-107.43956048344576, +304,,Walk tour mode ASC -- ride hail,indivTour*tourModeIsWalk,-7, +305,,Bike tour mode ASC -- walk,indivTour*tourModeIsBike,-10.153436763870724, +306,,Bike tour mode ASC -- ride hail,indivTour*tourModeIsBike,-7, +307,,Walk to Transit tour mode ASC -- transit,indivTour*tourModeIsWalkTransit,0.85560272226612022, +308,,Walk to Transit tour mode ASC -- shared ride 2,indivTour*tourModeIsWalkTransit,-3.7000932263526609, +309,,Walk to Transit tour mode ASC -- shared ride 3+,indivTour*tourModeIsWalkTransit,-4.0840016501087089, +310,,Walk to Transit tour mode ASC -- walk,indivTour*tourModeIsWalkTransit,2.1996281914776996, +311,,Walk to Transit tour mode ASC -- ride hail,indivTour*tourModeIsWalkTransit,-2.2395745968381973, +312,,Drive to Transit tour mode ASC -- drive to transit,indivTour*tourModeIsDriveTransit,2.0859181492209142, +313,,Drive to Transit tour mode ASC -- ride hail,indivTour*tourModeIsDriveTransit,-1.2625869372018286, +314,,Ride Hail tour mode ASC -- shared ride 2,indivTour*tourModeIsRideHail,-2.2145610603410848, +315,,Ride Hail tour mode ASC -- shared ride 3+,indivTour*tourModeIsRideHail,-7, +316,,Ride Hail tour mode ASC -- walk,indivTour*tourModeIsRideHail,-7, +317,,Ride Hail tour mode ASC -- walk to transit,indivTour*tourModeIsRideHail,-3.404775263515111, +318,,Ride Hail tour mode ASC -- taxi,indivTour*tourModeIsRideHail,-7, +319,,Walk not available for long distances,(tourMode!=4)*(walk_dist>3),1,od +320,,Bike not available for long distances,(tourMode!=5)*(bike_dist>8),1,od +321,,"Origin density index, walk, bike, walk-transit, TNC",originDensityApplied,"max(c_originDensityIndex*originDensityIndex,c_originDensityIndexMax)", +322,,Walk-express penalty for intermediate stops,(stopIsFirst+stopIsLast)<2,-0.27900000000000003, diff --git a/utilities/make-mode-choice/update-trip-social.csv b/utilities/make-mode-choice/update-trip-social.csv new file mode 100644 index 000000000..2f9fc8b1e --- /dev/null +++ b/utilities/make-mode-choice/update-trip-social.csv @@ -0,0 +1,323 @@ +row_number,token,description,filter,formula,index +1,c_ivt,In-vehicle time coefficient,,-2.7900000000000001E-2, +2,c_ivt_lrt,In-vehicle time coefficient on light rail,,-2.511E-2, +3,c_ivt_ferry,In-vehicle time coefficient on ferry,,-2.232E-2, +4,c_ivt_exp,In-vehicle time coefficient on express bus,,-1.7500000000000002E-2, +5,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,-2.232E-2, +6,c_ivt_com,In-vehicle time coefficient on commuter rail,,-2.232E-2, +7,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,-5.5800000000000002E-2, +8,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,-2.7900000000000001E-2, +9,c_wacc,Walk access time coefficient,,-5.5800000000000002E-2, +10,c_wegr,Walk egress time coefficient,,-5.5800000000000002E-2, +11,c_waux,Walk auxilliary time coefficient,,-5.5800000000000002E-2, +12,c_dtim,Drive access time coefficient,,-5.5800000000000002E-2, +13,c_xfers_wlk,"Transfer penalty, walk",,15.00 * c_ivt, +14,c_xfers_drv,"Transfer penalty, drive-transit",,20.00 * c_ivt, +15,c_xwait,Transfer wait time coefficient,,-5.5800000000000002E-2, +16,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,-5.5800000000000002E-2, +17,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,-0.27900000000000003, +18,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,-0.1116, +19,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,-0.55800000000000005, +20,vot,Value of Time,,@valueOfTime, +21,c_cost,"Cost coefficient, derived from Value of Time",,(0.6*c_ivt)/vot, +22,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +23,c_topology_walk,"Topology dummy coefficient, applied to walk",,-0.41849999999999998, +24,c_topology_bike,"Topology dummy coefficient, applied to bike",,-0.55800000000000005, +25,c_topology_trn,"Topology dummy coefficient, applied to transit",,-6.1379999999999997E-2, +26,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,5.5799999999999903E-3, +27,c_originDensityIndex,"Origin density index coef, applied to walk, bike, walk-transit",,1.6739999999999901E-2, +28,c_originDensityIndexMax,Maximum effect of origin density index,,0.41849999999999998, +29,c_age1619_da,Age 16-19--Drive Alone,,0, +30,c_age010_trn,Age 0-10--Transit,,0, +31,c_age16p_sr,Age 16+ -- Shared Ride,,0, +32,c_hhsize1_sr,Household Size 1--Shared Ride,,-0.73460000000000003, +33,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +34,freeParkingAllowed,Free parking is allowed for this purpose,,0, +35,costPerMile,Auto operating cost per mile,,18.29, +36,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +37,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +38,waitThresh,Wait time threshold to segment coefficients (minutes of wait),,10, +39,walkThresh,Walk threshold to segment coefficients (miles),,1, +40,walkSpeed,Walk speed (miles per hour),,3, +41,bikeThresh,Bike threshold to segment coefficients (miles),,6, +42,bikeSpeed,Bike speed (miles per hour),,12, +43,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333298, +44,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666596, +45,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +46,upperEA,Upper limit on time of day for the Early morning time period,,5, +47,upperAM,Upper limit on time of day for the AM peak time period,,9, +48,upperMD,Upper limit on time of day for the Midday time period,,14, +49,upperPM,Upper limit on time of day for the PM peak time period,,18, +50,upperEV,Upper limit on time of day for the Evening time period,,21, +51,autos,Household autos,,@autos, +52,workers,Household workers,,@workers, +53,hhSize,Household size (number of persons),,@hhSize, +54,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +55,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +56,age,Person age,,@age, +57,timeOfDay,Time of day for trip,,@tripTimeOfDay, +58,destZoneAreaType,Area type,,@areaType, +59,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +60,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +61,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +62,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +63,jointTour,Joint tour,,@tourCategoryJoint, +64,numberOfParticipantsInJointTour,Number of participants in joint tour,jointTour,@numberOfParticipantsInJointTour, +65,indivTour,Individual tour,jointTour==0,1, +66,subtour,Work based subtour,,@tourCategorySubtour, +67,tourMode,Primary tour mode integer code,,@tourMode, +68,tourModeIsSOV,Primary tour mode is auto,,@tourModeIsSOV, +69,tourModeIsAuto,Primary tour mode is auto,,@tourModeIsAuto, +70,tourModeIsWalk,Primary tour mode is walk,,@tourModeIsWalk, +71,tourModeIsBike,Primary tour mode is bike,,@tourModeIsBike, +72,tourModeIsWalkTransit,Primary tour mode is walk to transit,,@tourModeIsWalkTransit, +73,tourModeIsDriveTransit,Primary tour mode is drive to transit,,@tourModeIsDriveTransit, +74,tourModeIsRideHail,Primary tour mode is ride hailing,,@tourModeIsRideHail, +75,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed==1,@freeParking, +76,inbound,Stop is in inbound direction,,@tripIsInbound, +77,outbound,Stop is in outbound direction,,1-inbound, +78,stopIsFirst,First stop on half-tour,,@stopIsFirst, +79,stopIsLast,Last stop on half-tour,,@stopIsLast, +80,originTerminalTime,Terminal time (minutes) at origin,,@terminalTimeAtOrigin, +81,originTerminalTime,Terminal time (minutes) at origin--not counted at home,(inbound==0)*(stopIsFirst==1),0, +82,destTerminalTime,Terminal time (minutes) at destination,,@terminalTimeAtDestination, +83,destTerminalTime,Terminal time (minutes) at destination--not counted at home,(inbound==1)*(stopIsLast==1),0, +84,totalTerminalTime,Total Terminal time (minutes),,(originTerminalTime+destTerminalTime), +85,originHourlyParkingCost,Peak hourly parking cost at trip origin,,@hourlyPeakParkingCostAtOrigin, +86,destHourlyParkingCost,Peak hourly parking cost at trip destination,,@hourlyPeakParkingCostAtDestination, +87,tourDuration,Full duration of tour,,@tourDuration, +88,originDuration,Stop Duration if Origin of trip is at home,(inbound==0)*(stopIsFirst==1),0, +89,originDuration,Stop Duration if Origin of trip is at primary destination,(inbound==1)*(stopIsFirst==1)*(freeParkingAvailable==2),tourDuration, +90,originDuration,Stop Duration Origin of tirp is at an intermediate stop,stopIsFirst==0,1, +91,destDuration,Stop Duration if Destination of trip is at home,(inbound==1)*(stopIsLast==1),0, +92,destDuration,Stop Duration if Destination of trip is at primary destination,(inbound==0)*(stopIsLast==1)*(freeParkingAvailable==2),tourDuration, +93,destDuration,Stop Duration if Destination of trip is at an intermediate sotp,stopIsLast==0,1, +94,originParkingCost,Parking cost at trip origin,,originDuration*originHourlyParkingCost, +95,destParkingCost,Parking cost at trip destination,,destDuration*destHourlyParkingCost, +96,totalParkingCost,Total parking cost,,(originParkingCost+destParkingCost)/2, +97,tripTopology,Zone topology,,"if(inbound==1,@originTopology,@destinationTopology)", +98,originDensityIndex,Origin density index,,"if(inbound==1,@destinationDensityIndex,@originDensityIndex)", +99,originDensityApplied,Origin density index matters for this purpose,,1, +100,densityIndex,Zone density index (hhdens*empdens)/(hhdens+empdens),,"if(inbound==1,@originDensityIndex,@destinationDensityIndex)", +101,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +102,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +103,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +104,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +105,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +106,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA,1,0)*if(timeOfDay<=upperAM,2,0)", +130,tripPeriod,"trip departs in MD period, set index to 3",tripPeriod==0,"if(timeOfDay>upperAM,1,0)*if(timeOfDay<=upperMD,3,0)", +131,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperMD,1,0)*if(timeOfDay<=upperPM,4,0)", +132,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperPM,1,0)*if(timeOfDay<=upperNT,5,0)", +133,tripPeriod,"trip departs in EV period, set index to 5",tripPeriod==0,"if(timeOfDay>upperNT,6,0)", +134,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +135,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +136,walkTransitPossible,Walk to transit is available,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +137,driveTransitPossible,Drive to transit is available,outbound,walkTransitDest*(1-zeroAutoHh), +138,driveTransitPossible,Drive to transit is available,inbound,walkTransitOrig*(1-zeroAutoHh), +139,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +140,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +141,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +142,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +143,walk_dist,Walking distance,,DISTWALK,od +144,bike_dist,Biking distance,,DISTBIKE,od +145,sovAvailable,SOV mode is available,,"if(SOV_TIME[tripPeriod]>0,1,0)",od +146,hov2Available,HOV 2 mode is available,,"if(HOV2_TIME[tripPeriod]>0,1,0)",od +147,hov3Available,HOV 3+ mode is available,,"if(HOV3_TIME[tripPeriod]>0,1,0)",od +148,walkTransitAvailable,Walk local mode is available,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +149,pnrTransitAvailable,Park and ride transit is available for outbound tour,driveTransitPossible*(tourMode==7)*outbound,(PNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +150,pnrTransitAvailable,Park and ride transit is available for inbound tour,driveTransitPossible*(tourMode==7)*inbound,(WKL_TRN_PNR_TOTIVT[tripPeriod]/100>0),od +151,knrTransitAvailable,Kiss and ride transit is available for outbound tour,driveTransitPossible*(tourMode==8)*outbound,(KNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +152,knrTransitAvailable,Kiss and ride transit is available for inbound tour,driveTransitPossible*(tourMode==8)*inbound,(WKL_TRN_KNR_TOTIVT[tripPeriod]/100>0),od +153,,Drive alone - Unavailable,,sovAvailable==0, +154,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +155,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16) * (useAV==0),1, +156,,Drive alone - Unavailable for joint tours,jointTour==1,1, +157,,Drive alone - Unavailable if didn't drive to work,subtour==1,tourModeIsSOV==0, +158,,Drive alone - In-vehicle time,sovAvailable,c_ivt*SOV_TIME[tripPeriod]*autoIVTFactor,od +159,,Drive alone - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +160,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*SOV_DIST[tripPeriod])*autoCPMFactor,od +161,,Drive alone - Parking cost,sovAvailable,c_cost*totalParkingCost*autoParkingCostFactor, +162,,Drive alone - Bridge toll,sovAvailable,c_cost*SOV_BTOLL[tripPeriod],od +163,,Drive alone - Value toll,sovAvailable,"c_cost*SOV_VTOLL[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +164,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +165,,Shared ride 2 - Unavailable,,hov2Available==0, +166,,Shared ride 2 - Unavailable based on party size,jointTour==1,numberOfParticipantsInJointTour>2, +167,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*HOV2_TIME[tripPeriod]*autoIVTFactor,od +168,,Shared ride 2 - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +169,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*HOV2_DIST[tripPeriod])*autoCPMFactor,od +170,,Shared ride 2 - Parking cost,hov2Available,c_cost*totalParkingCost/costShareSr2*autoParkingCostFactor, +171,,Shared ride 2 - Bridge toll,hov2Available,c_cost*HOV2_BTOLL[tripPeriod]/costShareSr2,od +172,,Shared ride 2 - Value toll,hov2Available,"c_cost*HOV2_VTOLL[tripPeriod]/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +173,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +174,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +175,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +176,,Shared ride 3+ - Unavailable,,hov3Available==0, +177,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*HOV3_TIME[tripPeriod]*autoIVTFactor,od +178,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +179,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*HOV3_DIST[tripPeriod])*autoCPMFactor,od +180,,Shared ride 3+ - Parking cost,hov3Available,c_cost*totalParkingCost/costShareSr3*autoParkingCostFactor, +181,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*HOV3_BTOLL[tripPeriod]/costShareSr3,od +182,,Shared ride 3+ - Value toll,hov3Available,"c_cost*HOV3_VTOLL[tripPeriod]/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +183,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +184,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +185,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +186,,Walk - Time up to 1 mile,,"c_walkTimeShort*min(walk_dist*60/walkSpeed, walkThresh*60/walkSpeed)",od +187,,Walk - Time beyond 1 mile,,"c_walkTimeLong*max(walk_dist*60/walkSpeed - walkThresh*60/walkSpeed, 0)",od +188,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +189,,Walk - Topology,,c_topology_walk*tripTopology, +190,,Bike - Unavailable if didn't bike to work,(subtour==1)*(tourModeIsBike==0),1, +191,,Bike - Time up to 6 miles,,"c_bikeTimeShort*min(bike_dist*60/bikeSpeed, bikeThresh*60/bikeSpeed)",od +192,,Bike - Time beyond 6 of a miles,,"c_bikeTimeLong*max(bike_dist*60/bikeSpeed - bikeThresh*60/bikeSpeed, 0)",od +193,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +194,,Bike - Topology,,c_topology_bike*tripTopology, +195,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +196,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*WLK_TRN_WLK_IVT_LOC[tripPeriod]/100,od +197,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*WLK_TRN_WLK_IVT_EXP[tripPeriod]/100,od +198,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*WLK_TRN_WLK_IVT_LRT[tripPeriod]/100,od +199,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*WLK_TRN_WLK_IVT_FRY[tripPeriod]/100,od +200,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*WLK_TRN_WLK_IVT_HVY[tripPeriod]/100,od +201,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*WLK_TRN_WLK_IVT_COM[tripPeriod]/100,od +202,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiWait*min(WLK_TRN_WLKIWAIT[tripPeriod]/100,waitThresh)",od +203,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiWait*max(WLK_TRN_WLKIWAIT[tripPeriod]/100-waitThresh,0)",od +204,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*WLK_TRN_WLKXWAIT[tripPeriod]/100,od +205,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*max(WLK_TRN_WLKBOARDS[tripPeriod]-1,0)",od +206,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*originWalkTime, +207,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*destinationWalkTime, +208,,Walk to Transit - Walk other time,walkTransitAvailable,c_waux*WLK_TRN_WLKWAUX[tripPeriod]/100,od +209,,Walk to Transit - Fare,walkTransitAvailable,"c_cost*WLK_TRN_WLKFAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)",od +210,,Walk to Transit - Destination zone densityIndex,walkTransitAvailable,c_densityIndex*densityIndex, +211,,Walk to Transit - Topology,walkTransitAvailable,c_topology_trn*tripTopology, +212,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Park and Ride Transit - Unavailable (outbound),outbound,(pnrAvailableOutbound)==0, +214,,Park and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +215,,Park and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +216,,Park and Ride Transit - In-vehicle time (outbound),pnrAvailableOutbound,c_ivt*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +217,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),pnrAvailableOutbound,(c_ivt_com-c_ivt)*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +218,,Park and Ride Transit - Short iwait time (outbound),pnrAvailableOutbound,"c_shortiWait*min(PNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +219,,Park and Ride Transit - Long iwait time (outbound),pnrAvailableOutbound,"c_longiWait*max(PNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +220,,Park and Ride Transit - transfer wait time (outbound),pnrAvailableOutbound,c_xwait*PNR_TRN_WLK_XWAIT[tripPeriod]/100,od +221,,Park and Ride Transit - number of transfers (outbound),pnrAvailableOutbound,"c_xfers_drv*max(PNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +222,,Park and Ride Transit - Drive time (outbound),pnrAvailableOutbound,c_dtim*PNR_TRN_WLK_DTIM[tripPeriod]/100,od +223,,Park and Ride Transit - Walk egress time (outbound),pnrAvailableOutbound,c_wegr*destinationWalkTime, +224,,Park and Ride Transit - Walk other time (outbound),pnrAvailableOutbound,c_waux*PNR_TRN_WLK_WAUX[tripPeriod]/100,od +225,,Park and Ride Transit - Fare and operating cost (outbound),pnrAvailableOutbound,"c_cost*(PNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(PNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +226,,Park and Ride Transit - Ratio of drive access distance to OD distance (outbound),pnrAvailableOutbound,c_dacc_ratio*(PNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +227,,Park and Ride Transit - Destination zone densityIndex (outbound),pnrAvailableOutbound,c_densityIndex*densityIndex, +228,,Park and Ride Transit - Topology (outbound),pnrAvailableOutbound,c_topology_trn*tripTopology, +229,,Park and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +230,,Park and Ride Transit - Unavailable,inbound,(pnrAvailableInbound)==0, +231,,Park and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +232,,Park and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +233,,Park and Ride Transit - In-vehicle time,pnrAvailableInbound,c_ivt*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +234,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),pnrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +235,,Park and Ride Transit - Short iwait time,pnrAvailableInbound,"c_shortiWait*min(WLK_TRN_PNR_IWAIT[tripPeriod]/100,waitThresh)",od +236,,Park and Ride Transit - Long iwait time,pnrAvailableInbound,"c_longiWait*max(WLK_TRN_PNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +237,,Park and Ride Transit - transfer wait time,pnrAvailableInbound,c_xwait*WLK_TRN_PNR_XWAIT[tripPeriod]/100,od +238,,Park and Ride Transit - number of transfers,pnrAvailableInbound,"c_xfers_drv*max(WLK_TRN_PNR_BOARDS[tripPeriod]-1,0)",od +239,,Park and Ride Transit - Drive time,pnrAvailableInbound,c_dtim*WLK_TRN_PNR_DTIM[tripPeriod]/100,od +240,,Park and Ride Transit - Walk access time (inbound),pnrAvailableInbound,c_wacc*originWalkTime, +241,,Park and Ride Transit - Walk other time,pnrAvailableInbound,c_waux*WLK_TRN_PNR_WAUX[tripPeriod]/100,od +242,,Park and Ride Transit - Fare and operating cost,pnrAvailableInbound,"c_cost*(WLK_TRN_PNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_PNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +243,,Park and Ride Transit - Ratio of drive access distance to OD distance,pnrAvailableInbound,c_dacc_ratio*(WLK_TRN_PNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +244,,Park and Ride Transit - Destination zone densityIndex,pnrAvailableInbound,c_densityIndex*densityIndex, +245,,Park and Ride Transit - Topology,pnrAvailableInbound,c_topology_trn*tripTopology, +246,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +247,,Kiss and Ride Transit - Unavailable (outbound),outbound,(knrAvailableOutbound)==0, +248,,Kiss and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +249,,Kiss and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +250,,Kiss and Ride Transit - In-vehicle time (outbound),knrAvailableOutbound,c_ivt*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +251,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),knrAvailableOutbound,(c_ivt_com-c_ivt)*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +252,,Kiss and Ride Transit - Short iwait time (outbound),knrAvailableOutbound,"c_shortiWait*min(KNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +253,,Kiss and Ride Transit - Long iwait time (outbound),knrAvailableOutbound,"c_longiWait*max(KNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +254,,Kiss and Ride Transit - transfer wait time (outbound),knrAvailableOutbound,c_xwait*KNR_TRN_WLK_XWAIT[tripPeriod]/100,od +255,,Kiss and Ride Transit - number of transfers (outbound),knrAvailableOutbound,"c_xfers_drv*max(KNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +256,,Kiss and Ride Transit - Drive time (outbound),knrAvailableOutbound,c_dtim*KNR_TRN_WLK_DTIM[tripPeriod]/100,od +257,,Kiss and Ride Transit - Walk egress time (outbound),knrAvailableOutbound,c_wegr*destinationWalkTime, +258,,Kiss and Ride Transit - Walk other time (outbound),knrAvailableOutbound,c_waux*KNR_TRN_WLK_WAUX[tripPeriod]/100,od +259,,Kiss and Ride Transit - Fare and operating cost (outbound),knrAvailableOutbound,"c_cost*(KNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(KNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +260,,Kiss and Ride Transit - Ratio of drive access distance to OD distance (outbound),knrAvailableOutbound,c_dacc_ratio*(KNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +261,,Kiss and Ride Transit - Destination zone densityIndex (outbound),knrAvailableOutbound,c_densityIndex*densityIndex, +262,,Kiss and Ride Transit - Topology (outbound),knrAvailableOutbound,c_topology_trn*tripTopology, +263,,Kiss and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +264,,Kiss and Ride Transit - Unavailable,inbound,(knrAvailableInbound)==0, +265,,Kiss and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +266,,Kiss and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +267,,Kiss and Ride Transit - In-vehicle time,knrAvailableInbound,c_ivt*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +268,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),knrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +269,,Kiss and Ride Transit - Short iwait time,knrAvailableInbound,"c_shortiWait*min(WLK_TRN_KNR_IWAIT[tripPeriod]/100,waitThresh)",od +270,,Kiss and Ride Transit - Long iwait time,knrAvailableInbound,"c_longiWait*max(WLK_TRN_KNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +271,,Kiss and Ride Transit - transfer wait time,knrAvailableInbound,c_xwait*WLK_TRN_KNR_XWAIT[tripPeriod]/100,od +272,,Kiss and Ride Transit - number of transfers,knrAvailableInbound,"c_xfers_drv*max(WLK_TRN_KNR_BOARDS[tripPeriod]-1,0)",od +273,,Kiss and Ride Transit - Drive time,knrAvailableInbound,c_dtim*WLK_TRN_KNR_DTIM[tripPeriod]/100,od +274,,Kiss and Ride Transit - Walk access time (inbound),knrAvailableInbound,c_wacc*originWalkTime, +275,,Kiss and Ride Transit - Walk other time,knrAvailableInbound,c_waux*WLK_TRN_KNR_WAUX[tripPeriod]/100,od +276,,Kiss and Ride Transit - Fare and operating cost,knrAvailableInbound,"c_cost*(WLK_TRN_KNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_KNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +277,,Kiss and Ride Transit - Ratio of drive access distance to OD distance,knrAvailableInbound,c_dacc_ratio*(WLK_TRN_KNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +278,,Kiss and Ride Transit - Destination zone densityIndex,knrAvailableInbound,c_densityIndex*densityIndex, +279,,Kiss and Ride Transit - Topology,knrAvailableInbound,c_topology_trn*tripTopology, +280,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +281,,Taxi - In-vehicle time,,c_ivt*HOV2_TIME[tripPeriod],od +282,,Taxi - Wait time,,c_ivt*1.5*@waitTimeTaxi, +283,,Taxi - Tolls,,c_cost*HOV2_VTOLL[tripPeriod],od +284,,Taxi - Bridge toll,,c_cost*HOV2_BTOLL[tripPeriod],od +285,,Taxi - Fare,,c_cost*(costInitialTaxi + HOV2_DIST[tripPeriod] * costPerMileTaxi + HOV2_DIST[tripPeriod] * costPerMinuteTaxi )*100,"od,od" +286,,Auto tour mode availability,tourModeIsAuto,1, +287,,Walk tour mode availability,tourModeIsWalk,1, +288,,Bike tour mode availability,tourModeIsBike,1, +289,,Walk to Transit tour mode availability,tourModeIsWalkTransit,1, +290,,Drive to Transit tour modes availability,tourModeIsDriveTransit,1, +291,,Ride Hail tour modes availability,tourModeIsRideHail,1, +292,,Drive Alone tour mode ASC -- shared ride 2,indivTour*(tourMode==1),-999, +293,,Drive Alone tour mode ASC -- shared ride 3+,indivTour*(tourMode==1),-999, +294,,Drive Alone tour mode ASC -- walk,indivTour*(tourMode==1),-20.424509892826499, +295,,Drive Alone tour mode ASC -- ride hail,indivTour*(tourMode==1),-7, +296,,Shared Ride 2 tour mode ASC -- shared ride 2,indivTour*(tourMode==2),0.138963274259018, +297,,Shared Ride 2 tour mode ASC -- shared ride 3+,indivTour*(tourMode==2),-999, +298,,Shared Ride 2 tour mode ASC -- walk,indivTour*(tourMode==2),-0.31389822091724101, +299,,Shared Ride 2 tour mode ASC -- ride hail,indivTour*(tourMode==2),-7, +300,,Shared Ride 3+ tour mode ASC -- shared ride 2,indivTour*(tourMode==3),-0.54741977143629195, +301,,Shared Ride 3+ tour mode ASC -- shared ride 3+,indivTour*(tourMode==3),-1.4919035101870501E-2, +302,,Shared Ride 3+ tour mode ASC -- walk,indivTour*(tourMode==3),-0.39003957711760201, +303,,Shared Ride 3+ tour mode ASC -- ride hail,indivTour*(tourMode==3),-107.43956048344501, +304,,Walk tour mode ASC -- ride hail,indivTour*tourModeIsWalk,-7, +305,,Bike tour mode ASC -- walk,indivTour*tourModeIsBike,-10.153436763870699, +306,,Bike tour mode ASC -- ride hail,indivTour*tourModeIsBike,-7, +307,,Walk to Transit tour mode ASC -- transit,indivTour*tourModeIsWalkTransit,0.85560272226612, +308,,Walk to Transit tour mode ASC -- shared ride 2,indivTour*tourModeIsWalkTransit,-3.70009322635266, +309,,Walk to Transit tour mode ASC -- shared ride 3+,indivTour*tourModeIsWalkTransit,-4.0840016501087, +310,,Walk to Transit tour mode ASC -- walk,indivTour*tourModeIsWalkTransit,2.1996281914776898, +311,,Walk to Transit tour mode ASC -- ride hail,indivTour*tourModeIsWalkTransit,-2.2395745968381902, +312,,Drive to Transit tour mode ASC -- drive to transit,indivTour*tourModeIsDriveTransit,2.0859181492209098, +313,,Drive to Transit tour mode ASC -- ride hail,indivTour*tourModeIsDriveTransit,-1.2625869372018199, +314,,Ride Hail tour mode ASC -- shared ride 2,indivTour*tourModeIsRideHail,-2.2145610603410799, +315,,Ride Hail tour mode ASC -- shared ride 3+,indivTour*tourModeIsRideHail,-3.8718673959859702, +316,,Ride Hail tour mode ASC -- walk,indivTour*tourModeIsRideHail,-1.3523144019203772, +317,,Ride Hail tour mode ASC -- walk to transit,indivTour*tourModeIsRideHail,-3.4047752635151101, +318,,Ride Hail tour mode ASC -- taxi,indivTour*tourModeIsRideHail,-7, +319,,Walk not available for long distances,(tourMode!=4)*(walk_dist>3),1,od +320,,Bike not available for long distances,(tourMode!=5)*(bike_dist>8),1,od +321,,"Origin density index, walk, bike, walk-transit, TNC",originDensityApplied,"max(c_originDensityIndex*originDensityIndex,c_originDensityIndexMax)", +322,,Walk-express penalty for intermediate stops,(stopIsFirst+stopIsLast)<2,-0.27900000000000003, diff --git a/utilities/make-mode-choice/update-trip-university.csv b/utilities/make-mode-choice/update-trip-university.csv new file mode 100644 index 000000000..74896592d --- /dev/null +++ b/utilities/make-mode-choice/update-trip-university.csv @@ -0,0 +1,323 @@ +row_number,token,description,filter,formula,index +1,c_ivt,In-vehicle time coefficient,,-2.7099999999999999E-2, +2,c_ivt_lrt,In-vehicle time coefficient on light rail,,-2.4389999999999998E-2, +3,c_ivt_ferry,In-vehicle time coefficient on ferry,,-2.1680000000000001E-2, +4,c_ivt_exp,In-vehicle time coefficient on express bus,,-1.7500000000000002E-2, +5,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,-2.1680000000000001E-2, +6,c_ivt_com,In-vehicle time coefficient on commuter rail,,-2.1680000000000001E-2, +7,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,-5.4199999999999998E-2, +8,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,-2.7099999999999999E-2, +9,c_wacc,Walk access time coefficient,,-5.4199999999999998E-2, +10,c_wegr,Walk egress time coefficient,,-5.4199999999999998E-2, +11,c_waux,Walk auxilliary time coefficient,,-5.4199999999999998E-2, +12,c_dtim,Drive access time coefficient,,-5.4199999999999998E-2, +13,c_xfers_wlk,"Transfer penalty, walk",,15.00 * c_ivt, +14,c_xfers_drv,"Transfer penalty, drive-transit",,20.00 * c_ivt, +15,c_xwait,Transfer wait time coefficient,,-5.4199999999999998E-2, +16,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,-5.4199999999999998E-2, +17,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,-0.27100000000000002, +18,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,-0.1084, +19,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,-0.54200000000000004, +20,vot,Value of Time,,@valueOfTime, +21,c_cost,"Cost coefficient, derived from Value of Time",,(0.6*c_ivt)/vot, +22,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +23,c_topology_walk,"Topology dummy coefficient, applied to walk",,-0.40649999999999997, +24,c_topology_bike,"Topology dummy coefficient, applied to bike",,-0.54200000000000004, +25,c_topology_trn,"Topology dummy coefficient, applied to transit",,-5.9619999999999999E-2, +26,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,5.4199999999999995E-3, +27,c_originDensityIndex,"Origin density index coef, applied to walk, bike, walk-transit",,1.6259999999999997E-2, +28,c_originDensityIndexMax,Maximum effect of origin density index,,0.40649999999999997, +29,c_age1619_da,Age 16-19--Drive Alone,,0, +30,c_age010_trn,Age 0-10--Transit,,0, +31,c_age16p_sr,Age 16+ -- Shared Ride,,0, +32,c_hhsize1_sr,Household Size 1--Shared Ride,,-0.73460000000000003, +33,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +34,freeParkingAllowed,Free parking is allowed for this purpose,,0, +35,costPerMile,Auto operating cost per mile,,18.29, +36,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +37,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +38,waitThresh,Wait time threshold to segment coefficients (minutes of wait),,10, +39,walkThresh,Walk threshold to segment coefficients (miles),,1, +40,walkSpeed,Walk speed (miles per hour),,3, +41,bikeThresh,Bike threshold to segment coefficients (miles),,6, +42,bikeSpeed,Bike speed (miles per hour),,12, +43,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333331, +44,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666663, +45,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +46,upperEA,Upper limit on time of day for the Early morning time period,,5, +47,upperAM,Upper limit on time of day for the AM peak time period,,9, +48,upperMD,Upper limit on time of day for the Midday time period,,14, +49,upperPM,Upper limit on time of day for the PM peak time period,,18, +50,upperEV,Upper limit on time of day for the Evening time period,,21, +51,autos,Household autos,,@autos, +52,workers,Household workers,,@workers, +53,hhSize,Household size (number of persons),,@hhSize, +54,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +55,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +56,age,Person age,,@age, +57,timeOfDay,Time of day for trip,,@tripTimeOfDay, +58,destZoneAreaType,Area type,,@areaType, +59,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +60,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +61,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +62,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +63,jointTour,Joint tour,,@tourCategoryJoint, +64,numberOfParticipantsInJointTour,Number of participants in joint tour,jointTour,@numberOfParticipantsInJointTour, +65,indivTour,Individual tour,jointTour==0,1, +66,subtour,Work based subtour,,@tourCategorySubtour, +67,tourMode,Primary tour mode integer code,,@tourMode, +68,tourModeIsSOV,Primary tour mode is auto,,@tourModeIsSOV, +69,tourModeIsAuto,Primary tour mode is auto,,@tourModeIsAuto, +70,tourModeIsWalk,Primary tour mode is walk,,@tourModeIsWalk, +71,tourModeIsBike,Primary tour mode is bike,,@tourModeIsBike, +72,tourModeIsWalkTransit,Primary tour mode is walk to transit,,@tourModeIsWalkTransit, +73,tourModeIsDriveTransit,Primary tour mode is drive to transit,,@tourModeIsDriveTransit, +74,tourModeIsRideHail,Primary tour mode is ride hailing,,@tourModeIsRideHail, +75,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed==1,@freeParking, +76,inbound,Stop is in inbound direction,,@tripIsInbound, +77,outbound,Stop is in outbound direction,,1-inbound, +78,stopIsFirst,First stop on half-tour,,@stopIsFirst, +79,stopIsLast,Last stop on half-tour,,@stopIsLast, +80,originTerminalTime,Terminal time (minutes) at origin,,@terminalTimeAtOrigin, +81,originTerminalTime,Terminal time (minutes) at origin--not counted at home,(inbound==0)*(stopIsFirst==1),0, +82,destTerminalTime,Terminal time (minutes) at destination,,@terminalTimeAtDestination, +83,destTerminalTime,Terminal time (minutes) at destination--not counted at home,(inbound==1)*(stopIsLast==1),0, +84,totalTerminalTime,Total Terminal time (minutes),,(originTerminalTime+destTerminalTime), +85,originHourlyParkingCost,Peak hourly parking cost at trip origin,,@hourlyPeakParkingCostAtOrigin, +86,destHourlyParkingCost,Peak hourly parking cost at trip destination,,@hourlyPeakParkingCostAtDestination, +87,tourDuration,Full duration of tour,,@tourDuration, +88,originDuration,Stop Duration if Origin of trip is at home,(inbound==0)*(stopIsFirst==1),0, +89,originDuration,Stop Duration if Origin of trip is at primary destination,(inbound==1)*(stopIsFirst==1)*(freeParkingAvailable==2),tourDuration, +90,originDuration,Stop Duration Origin of tirp is at an intermediate stop,stopIsFirst==0,1, +91,destDuration,Stop Duration if Destination of trip is at home,(inbound==1)*(stopIsLast==1),0, +92,destDuration,Stop Duration if Destination of trip is at primary destination,(inbound==0)*(stopIsLast==1)*(freeParkingAvailable==2),tourDuration, +93,destDuration,Stop Duration if Destination of trip is at an intermediate sotp,stopIsLast==0,1, +94,originParkingCost,Parking cost at trip origin,,originDuration*originHourlyParkingCost, +95,destParkingCost,Parking cost at trip destination,,destDuration*destHourlyParkingCost, +96,totalParkingCost,Total parking cost,,(originParkingCost+destParkingCost)/2, +97,tripTopology,Zone topology,,"if(inbound==1,@originTopology,@destinationTopology)", +98,originDensityIndex,Origin density index,,"if(inbound==1,@destinationDensityIndex,@originDensityIndex)", +99,originDensityApplied,Origin density index matters for this purpose,,0, +100,densityIndex,Zone density index (hhdens*empdens)/(hhdens+empdens),,"if(inbound==1,@originDensityIndex,@destinationDensityIndex)", +101,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +102,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +103,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +104,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +105,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +106,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA,1,0)*if(timeOfDay<=upperAM,2,0)", +130,tripPeriod,"trip departs in MD period, set index to 3",tripPeriod==0,"if(timeOfDay>upperAM,1,0)*if(timeOfDay<=upperMD,3,0)", +131,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperMD,1,0)*if(timeOfDay<=upperPM,4,0)", +132,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperPM,1,0)*if(timeOfDay<=upperNT,5,0)", +133,tripPeriod,"trip departs in EV period, set index to 5",tripPeriod==0,"if(timeOfDay>upperNT,6,0)", +134,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +135,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +136,walkTransitPossible,Walk to transit is available,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +137,driveTransitPossible,Drive to transit is available,outbound,walkTransitDest*(1-zeroAutoHh), +138,driveTransitPossible,Drive to transit is available,inbound,walkTransitOrig*(1-zeroAutoHh), +139,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +140,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +141,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +142,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +143,walk_dist,Walking distance,,DISTWALK,od +144,bike_dist,Biking distance,,DISTBIKE,od +145,sovAvailable,SOV mode is available,,"if(SOV_TIME[tripPeriod]>0,1,0)",od +146,hov2Available,HOV 2 mode is available,,"if(HOV2_TIME[tripPeriod]>0,1,0)",od +147,hov3Available,HOV 3+ mode is available,,"if(HOV3_TIME[tripPeriod]>0,1,0)",od +148,walkTransitAvailable,Walk local mode is available,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +149,pnrTransitAvailable,Park and ride transit is available for outbound tour,driveTransitPossible*(tourMode==7)*outbound,(PNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +150,pnrTransitAvailable,Park and ride transit is available for inbound tour,driveTransitPossible*(tourMode==7)*inbound,(WKL_TRN_PNR_TOTIVT[tripPeriod]/100>0),od +151,knrTransitAvailable,Kiss and ride transit is available for outbound tour,driveTransitPossible*(tourMode==8)*outbound,(KNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +152,knrTransitAvailable,Kiss and ride transit is available for inbound tour,driveTransitPossible*(tourMode==8)*inbound,(WKL_TRN_KNR_TOTIVT[tripPeriod]/100>0),od +153,,Drive alone - Unavailable,,sovAvailable==0, +154,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +155,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16) * (useAV==0),1, +156,,Drive alone - Unavailable for joint tours,jointTour==1,1, +157,,Drive alone - Unavailable if didn't drive to work,subtour==1,tourModeIsSOV==0, +158,,Drive alone - In-vehicle time,sovAvailable,c_ivt*SOV_TIME[tripPeriod]*autoIVTFactor,od +159,,Drive alone - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +160,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*SOV_DIST[tripPeriod])*autoCPMFactor,od +161,,Drive alone - Parking cost,sovAvailable,c_cost*totalParkingCost*autoParkingCostFactor, +162,,Drive alone - Bridge toll,sovAvailable,c_cost*SOV_BTOLL[tripPeriod],od +163,,Drive alone - Value toll,sovAvailable,"c_cost*SOV_VTOLL[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +164,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +165,,Shared ride 2 - Unavailable,,hov2Available==0, +166,,Shared ride 2 - Unavailable based on party size,jointTour==1,numberOfParticipantsInJointTour>2, +167,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*HOV2_TIME[tripPeriod]*autoIVTFactor,od +168,,Shared ride 2 - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +169,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*HOV2_DIST[tripPeriod])*autoCPMFactor,od +170,,Shared ride 2 - Parking cost,hov2Available,c_cost*totalParkingCost/costShareSr2*autoParkingCostFactor, +171,,Shared ride 2 - Bridge toll,hov2Available,c_cost*HOV2_BTOLL[tripPeriod]/costShareSr2,od +172,,Shared ride 2 - Value toll,hov2Available,"c_cost*HOV2_VTOLL[tripPeriod]/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +173,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +174,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +175,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +176,,Shared ride 3+ - Unavailable,,hov3Available==0, +177,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*HOV3_TIME[tripPeriod]*autoIVTFactor,od +178,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +179,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*HOV3_DIST[tripPeriod])*autoCPMFactor,od +180,,Shared ride 3+ - Parking cost,hov3Available,c_cost*totalParkingCost/costShareSr3*autoParkingCostFactor, +181,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*HOV3_BTOLL[tripPeriod]/costShareSr3,od +182,,Shared ride 3+ - Value toll,hov3Available,"c_cost*HOV3_VTOLL[tripPeriod]/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +183,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +184,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +185,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +186,,Walk - Time up to 1 mile,,"c_walkTimeShort*min(walk_dist*60/walkSpeed, walkThresh*60/walkSpeed)",od +187,,Walk - Time beyond 1 mile,,"c_walkTimeLong*max(walk_dist*60/walkSpeed - walkThresh*60/walkSpeed, 0)",od +188,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +189,,Walk - Topology,,c_topology_walk*tripTopology, +190,,Bike - Unavailable if didn't bike to work,(subtour==1)*(tourModeIsBike==0),1, +191,,Bike - Time up to 6 miles,,"c_bikeTimeShort*min(bike_dist*60/bikeSpeed, bikeThresh*60/bikeSpeed)",od +192,,Bike - Time beyond 6 of a miles,,"c_bikeTimeLong*max(bike_dist*60/bikeSpeed - bikeThresh*60/bikeSpeed, 0)",od +193,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +194,,Bike - Topology,,c_topology_bike*tripTopology, +195,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +196,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*WLK_TRN_WLK_IVT_LOC[tripPeriod]/100,od +197,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*WLK_TRN_WLK_IVT_EXP[tripPeriod]/100,od +198,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*WLK_TRN_WLK_IVT_LRT[tripPeriod]/100,od +199,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*WLK_TRN_WLK_IVT_FRY[tripPeriod]/100,od +200,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*WLK_TRN_WLK_IVT_HVY[tripPeriod]/100,od +201,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*WLK_TRN_WLK_IVT_COM[tripPeriod]/100,od +202,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiWait*min(WLK_TRN_WLKIWAIT[tripPeriod]/100,waitThresh)",od +203,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiWait*max(WLK_TRN_WLKIWAIT[tripPeriod]/100-waitThresh,0)",od +204,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*WLK_TRN_WLKXWAIT[tripPeriod]/100,od +205,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*max(WLK_TRN_WLKBOARDS[tripPeriod]-1,0)",od +206,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*originWalkTime, +207,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*destinationWalkTime, +208,,Walk to Transit - Walk other time,walkTransitAvailable,c_waux*WLK_TRN_WLKWAUX[tripPeriod]/100,od +209,,Walk to Transit - Fare,walkTransitAvailable,"c_cost*WLK_TRN_WLKFAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)",od +210,,Walk to Transit - Destination zone densityIndex,walkTransitAvailable,c_densityIndex*densityIndex, +211,,Walk to Transit - Topology,walkTransitAvailable,c_topology_trn*tripTopology, +212,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Park and Ride Transit - Unavailable (outbound),outbound,(pnrAvailableOutbound)==0, +214,,Park and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +215,,Park and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +216,,Park and Ride Transit - In-vehicle time (outbound),pnrAvailableOutbound,c_ivt*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +217,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),pnrAvailableOutbound,(c_ivt_com-c_ivt)*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +218,,Park and Ride Transit - Short iwait time (outbound),pnrAvailableOutbound,"c_shortiWait*min(PNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +219,,Park and Ride Transit - Long iwait time (outbound),pnrAvailableOutbound,"c_longiWait*max(PNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +220,,Park and Ride Transit - transfer wait time (outbound),pnrAvailableOutbound,c_xwait*PNR_TRN_WLK_XWAIT[tripPeriod]/100,od +221,,Park and Ride Transit - number of transfers (outbound),pnrAvailableOutbound,"c_xfers_drv*max(PNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +222,,Park and Ride Transit - Drive time (outbound),pnrAvailableOutbound,c_dtim*PNR_TRN_WLK_DTIM[tripPeriod]/100,od +223,,Park and Ride Transit - Walk egress time (outbound),pnrAvailableOutbound,c_wegr*destinationWalkTime, +224,,Park and Ride Transit - Walk other time (outbound),pnrAvailableOutbound,c_waux*PNR_TRN_WLK_WAUX[tripPeriod]/100,od +225,,Park and Ride Transit - Fare and operating cost (outbound),pnrAvailableOutbound,"c_cost*(PNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(PNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +226,,Park and Ride Transit - Ratio of drive access distance to OD distance (outbound),pnrAvailableOutbound,c_dacc_ratio*(PNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +227,,Park and Ride Transit - Destination zone densityIndex (outbound),pnrAvailableOutbound,c_densityIndex*densityIndex, +228,,Park and Ride Transit - Topology (outbound),pnrAvailableOutbound,c_topology_trn*tripTopology, +229,,Park and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +230,,Park and Ride Transit - Unavailable,inbound,(pnrAvailableInbound)==0, +231,,Park and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +232,,Park and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +233,,Park and Ride Transit - In-vehicle time,pnrAvailableInbound,c_ivt*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +234,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),pnrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +235,,Park and Ride Transit - Short iwait time,pnrAvailableInbound,"c_shortiWait*min(WLK_TRN_PNR_IWAIT[tripPeriod]/100,waitThresh)",od +236,,Park and Ride Transit - Long iwait time,pnrAvailableInbound,"c_longiWait*max(WLK_TRN_PNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +237,,Park and Ride Transit - transfer wait time,pnrAvailableInbound,c_xwait*WLK_TRN_PNR_XWAIT[tripPeriod]/100,od +238,,Park and Ride Transit - number of transfers,pnrAvailableInbound,"c_xfers_drv*max(WLK_TRN_PNR_BOARDS[tripPeriod]-1,0)",od +239,,Park and Ride Transit - Drive time,pnrAvailableInbound,c_dtim*WLK_TRN_PNR_DTIM[tripPeriod]/100,od +240,,Park and Ride Transit - Walk access time (inbound),pnrAvailableInbound,c_wacc*originWalkTime, +241,,Park and Ride Transit - Walk other time,pnrAvailableInbound,c_waux*WLK_TRN_PNR_WAUX[tripPeriod]/100,od +242,,Park and Ride Transit - Fare and operating cost,pnrAvailableInbound,"c_cost*(WLK_TRN_PNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_PNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +243,,Park and Ride Transit - Ratio of drive access distance to OD distance,pnrAvailableInbound,c_dacc_ratio*(WLK_TRN_PNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +244,,Park and Ride Transit - Destination zone densityIndex,pnrAvailableInbound,c_densityIndex*densityIndex, +245,,Park and Ride Transit - Topology,pnrAvailableInbound,c_topology_trn*tripTopology, +246,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +247,,Kiss and Ride Transit - Unavailable (outbound),outbound,(knrAvailableOutbound)==0, +248,,Kiss and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +249,,Kiss and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +250,,Kiss and Ride Transit - In-vehicle time (outbound),knrAvailableOutbound,c_ivt*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +251,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),knrAvailableOutbound,(c_ivt_com-c_ivt)*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +252,,Kiss and Ride Transit - Short iwait time (outbound),knrAvailableOutbound,"c_shortiWait*min(KNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +253,,Kiss and Ride Transit - Long iwait time (outbound),knrAvailableOutbound,"c_longiWait*max(KNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +254,,Kiss and Ride Transit - transfer wait time (outbound),knrAvailableOutbound,c_xwait*KNR_TRN_WLK_XWAIT[tripPeriod]/100,od +255,,Kiss and Ride Transit - number of transfers (outbound),knrAvailableOutbound,"c_xfers_drv*max(KNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +256,,Kiss and Ride Transit - Drive time (outbound),knrAvailableOutbound,c_dtim*KNR_TRN_WLK_DTIM[tripPeriod]/100,od +257,,Kiss and Ride Transit - Walk egress time (outbound),knrAvailableOutbound,c_wegr*destinationWalkTime, +258,,Kiss and Ride Transit - Walk other time (outbound),knrAvailableOutbound,c_waux*KNR_TRN_WLK_WAUX[tripPeriod]/100,od +259,,Kiss and Ride Transit - Fare and operating cost (outbound),knrAvailableOutbound,"c_cost*(KNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(KNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +260,,Kiss and Ride Transit - Ratio of drive access distance to OD distance (outbound),knrAvailableOutbound,c_dacc_ratio*(KNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +261,,Kiss and Ride Transit - Destination zone densityIndex (outbound),knrAvailableOutbound,c_densityIndex*densityIndex, +262,,Kiss and Ride Transit - Topology (outbound),knrAvailableOutbound,c_topology_trn*tripTopology, +263,,Kiss and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +264,,Kiss and Ride Transit - Unavailable,inbound,(knrAvailableInbound)==0, +265,,Kiss and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +266,,Kiss and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +267,,Kiss and Ride Transit - In-vehicle time,knrAvailableInbound,c_ivt*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +268,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),knrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +269,,Kiss and Ride Transit - Short iwait time,knrAvailableInbound,"c_shortiWait*min(WLK_TRN_KNR_IWAIT[tripPeriod]/100,waitThresh)",od +270,,Kiss and Ride Transit - Long iwait time,knrAvailableInbound,"c_longiWait*max(WLK_TRN_KNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +271,,Kiss and Ride Transit - transfer wait time,knrAvailableInbound,c_xwait*WLK_TRN_KNR_XWAIT[tripPeriod]/100,od +272,,Kiss and Ride Transit - number of transfers,knrAvailableInbound,"c_xfers_drv*max(WLK_TRN_KNR_BOARDS[tripPeriod]-1,0)",od +273,,Kiss and Ride Transit - Drive time,knrAvailableInbound,c_dtim*WLK_TRN_KNR_DTIM[tripPeriod]/100,od +274,,Kiss and Ride Transit - Walk access time (inbound),knrAvailableInbound,c_wacc*originWalkTime, +275,,Kiss and Ride Transit - Walk other time,knrAvailableInbound,c_waux*WLK_TRN_KNR_WAUX[tripPeriod]/100,od +276,,Kiss and Ride Transit - Fare and operating cost,knrAvailableInbound,"c_cost*(WLK_TRN_KNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_KNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +277,,Kiss and Ride Transit - Ratio of drive access distance to OD distance,knrAvailableInbound,c_dacc_ratio*(WLK_TRN_KNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +278,,Kiss and Ride Transit - Destination zone densityIndex,knrAvailableInbound,c_densityIndex*densityIndex, +279,,Kiss and Ride Transit - Topology,knrAvailableInbound,c_topology_trn*tripTopology, +280,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +281,,Taxi - In-vehicle time,,c_ivt*HOV2_TIME[tripPeriod],od +282,,Taxi - Wait time,,c_ivt*1.5*@waitTimeTaxi, +283,,Taxi - Tolls,,c_cost*HOV2_VTOLL[tripPeriod],od +284,,Taxi - Bridge toll,,c_cost*HOV2_BTOLL[tripPeriod],od +285,,Taxi - Fare,,c_cost*(costInitialTaxi + HOV2_DIST[tripPeriod] * costPerMileTaxi + HOV2_DIST[tripPeriod] * costPerMinuteTaxi )*100,"od,od" +286,,Auto tour mode availability,tourModeIsAuto,1, +287,,Walk tour mode availability,tourModeIsWalk,1, +288,,Bike tour mode availability,tourModeIsBike,1, +289,,Walk to Transit tour mode availability,tourModeIsWalkTransit,1, +290,,Drive to Transit tour modes availability,tourModeIsDriveTransit,1, +291,,Ride Hail tour modes availability,tourModeIsRideHail,1, +292,,Drive Alone tour mode ASC -- shared ride 2,indivTour*(tourMode==1),-999, +293,,Drive Alone tour mode ASC -- shared ride 3+,indivTour*(tourMode==1),-999, +294,,Drive Alone tour mode ASC -- walk,indivTour*(tourMode==1),-20.424509892826542, +295,,Drive Alone tour mode ASC -- ride hail,indivTour*(tourMode==1),-7, +296,,Shared Ride 2 tour mode ASC -- shared ride 2,indivTour*(tourMode==2),0.13896327425901844, +297,,Shared Ride 2 tour mode ASC -- shared ride 3+,indivTour*(tourMode==2),-999, +298,,Shared Ride 2 tour mode ASC -- walk,indivTour*(tourMode==2),-0.31389822091724112, +299,,Shared Ride 2 tour mode ASC -- ride hail,indivTour*(tourMode==2),-7, +300,,Shared Ride 3+ tour mode ASC -- shared ride 2,indivTour*(tourMode==3),-0.54741977143629272, +301,,Shared Ride 3+ tour mode ASC -- shared ride 3+,indivTour*(tourMode==3),-1.491903510187052E-2, +302,,Shared Ride 3+ tour mode ASC -- walk,indivTour*(tourMode==3),-0.39003957711760229, +303,,Shared Ride 3+ tour mode ASC -- ride hail,indivTour*(tourMode==3),-107.43956048344576, +304,,Walk tour mode ASC -- ride hail,indivTour*tourModeIsWalk,-7, +305,,Bike tour mode ASC -- walk,indivTour*tourModeIsBike,-7, +306,,Bike tour mode ASC -- ride hail,indivTour*tourModeIsBike,-7, +307,,Walk to Transit tour mode ASC -- transit,indivTour*tourModeIsWalkTransit,0.85560272226612022, +308,,Walk to Transit tour mode ASC -- shared ride 2,indivTour*tourModeIsWalkTransit,-3.1104886484422711, +309,,Walk to Transit tour mode ASC -- shared ride 3+,indivTour*tourModeIsWalkTransit,-4.7112345750127913, +310,,Walk to Transit tour mode ASC -- walk,indivTour*tourModeIsWalkTransit,0.77517820892732392, +311,,Walk to Transit tour mode ASC -- ride hail,indivTour*tourModeIsWalkTransit,-3.2879392138602594, +312,,Drive to Transit tour mode ASC -- drive to transit,indivTour*tourModeIsDriveTransit,2.0859181492209142, +313,,Drive to Transit tour mode ASC -- ride hail,indivTour*tourModeIsDriveTransit,-1.5120197357116609, +314,,Ride Hail tour mode ASC -- shared ride 2,indivTour*tourModeIsRideHail,-2.0312139606423134, +315,,Ride Hail tour mode ASC -- shared ride 3+,indivTour*tourModeIsRideHail,-2.7252865511893392, +316,,Ride Hail tour mode ASC -- walk,indivTour*tourModeIsRideHail,-7, +317,,Ride Hail tour mode ASC -- walk to transit,indivTour*tourModeIsRideHail,-3.583292632329778, +318,,Ride Hail tour mode ASC -- taxi,indivTour*tourModeIsRideHail,-0.64748896820820201, +319,,Walk not available for long distances,(tourMode!=4)*(walk_dist>3),1,od +320,,Bike not available for long distances,(tourMode!=5)*(bike_dist>8),1,od +321,,"Origin density index, walk, bike, walk-transit, TNC",originDensityApplied,"max(c_originDensityIndex*originDensityIndex,c_originDensityIndexMax)", +322,,Walk-express penalty for intermediate stops,(stopIsFirst+stopIsLast)<2,-0.27100000000000002, diff --git a/utilities/make-mode-choice/update-trip-workbased.csv b/utilities/make-mode-choice/update-trip-workbased.csv new file mode 100644 index 000000000..1a525c768 --- /dev/null +++ b/utilities/make-mode-choice/update-trip-workbased.csv @@ -0,0 +1,323 @@ +row_number,token,description,filter,formula,index +1,c_ivt,In-vehicle time coefficient,,-2.7900000000000001E-2, +2,c_ivt_lrt,In-vehicle time coefficient on light rail,,-2.511E-2, +3,c_ivt_ferry,In-vehicle time coefficient on ferry,,-2.232E-2, +4,c_ivt_exp,In-vehicle time coefficient on express bus,,-1.7500000000000002E-2, +5,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,-2.232E-2, +6,c_ivt_com,In-vehicle time coefficient on commuter rail,,-2.232E-2, +7,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,-5.5800000000000002E-2, +8,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,-2.7900000000000001E-2, +9,c_wacc,Walk access time coefficient,,-5.5800000000000002E-2, +10,c_wegr,Walk egress time coefficient,,-5.5800000000000002E-2, +11,c_waux,Walk auxilliary time coefficient,,-5.5800000000000002E-2, +12,c_dtim,Drive access time coefficient,,-5.5800000000000002E-2, +13,c_xfers_wlk,"Transfer penalty, walk",,15.00 * c_ivt, +14,c_xfers_drv,"Transfer penalty, drive-transit",,20.00 * c_ivt, +15,c_xwait,Transfer wait time coefficient,,-5.5800000000000002E-2, +16,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,-5.5800000000000002E-2, +17,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,-0.27900000000000003, +18,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,-0.1116, +19,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,-0.55800000000000005, +20,vot,Value of Time,,@valueOfTime, +21,c_cost,"Cost coefficient, derived from Value of Time",,(0.6*c_ivt)/vot, +22,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +23,c_topology_walk,"Topology dummy coefficient, applied to walk",,-0.41849999999999998, +24,c_topology_bike,"Topology dummy coefficient, applied to bike",,-0.55800000000000005, +25,c_topology_trn,"Topology dummy coefficient, applied to transit",,-6.1379999999999997E-2, +26,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,5.5799999999999903E-3, +27,c_originDensityIndex,"Origin density index coef, applied to walk, bike, walk-transit",,1.6739999999999901E-2, +28,c_originDensityIndexMax,Maximum effect of origin density index,,0.41849999999999998, +29,c_age1619_da,Age 16-19--Drive Alone,,0, +30,c_age010_trn,Age 0-10--Transit,,0, +31,c_age16p_sr,Age 16+ -- Shared Ride,,0, +32,c_hhsize1_sr,Household Size 1--Shared Ride,,-0.73460000000000003, +33,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +34,freeParkingAllowed,Free parking is allowed for this purpose,,0, +35,costPerMile,Auto operating cost per mile,,18.29, +36,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +37,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +38,waitThresh,Wait time threshold to segment coefficients (minutes of wait),,10, +39,walkThresh,Walk threshold to segment coefficients (miles),,1, +40,walkSpeed,Walk speed (miles per hour),,3, +41,bikeThresh,Bike threshold to segment coefficients (miles),,6, +42,bikeSpeed,Bike speed (miles per hour),,12, +43,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333298, +44,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666596, +45,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +46,upperEA,Upper limit on time of day for the Early morning time period,,5, +47,upperAM,Upper limit on time of day for the AM peak time period,,9, +48,upperMD,Upper limit on time of day for the Midday time period,,14, +49,upperPM,Upper limit on time of day for the PM peak time period,,18, +50,upperEV,Upper limit on time of day for the Evening time period,,21, +51,autos,Household autos,,@autos, +52,workers,Household workers,,@workers, +53,hhSize,Household size (number of persons),,@hhSize, +54,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +55,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +56,age,Person age,,@age, +57,timeOfDay,Time of day for trip,,@tripTimeOfDay, +58,destZoneAreaType,Area type,,@areaType, +59,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +60,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +61,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +62,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +63,jointTour,Joint tour,,@tourCategoryJoint, +64,numberOfParticipantsInJointTour,Number of participants in joint tour,jointTour,@numberOfParticipantsInJointTour, +65,indivTour,Individual tour,jointTour==0,1, +66,subtour,Work based subtour,,@tourCategorySubtour, +67,tourMode,Primary tour mode integer code,,@tourMode, +68,tourModeIsSOV,Primary tour mode is auto,,@tourModeIsSOV, +69,tourModeIsAuto,Primary tour mode is auto,,@tourModeIsAuto, +70,tourModeIsWalk,Primary tour mode is walk,,@tourModeIsWalk, +71,tourModeIsBike,Primary tour mode is bike,,@tourModeIsBike, +72,tourModeIsWalkTransit,Primary tour mode is walk to transit,,@tourModeIsWalkTransit, +73,tourModeIsDriveTransit,Primary tour mode is drive to transit,,@tourModeIsDriveTransit, +74,tourModeIsRideHail,Primary tour mode is ride hailing,,@tourModeIsRideHail, +75,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed==1,@freeParking, +76,inbound,Stop is in inbound direction,,@tripIsInbound, +77,outbound,Stop is in outbound direction,,1-inbound, +78,stopIsFirst,First stop on half-tour,,@stopIsFirst, +79,stopIsLast,Last stop on half-tour,,@stopIsLast, +80,originTerminalTime,Terminal time (minutes) at origin,,@terminalTimeAtOrigin, +81,originTerminalTime,Terminal time (minutes) at origin--not counted at home,(inbound==0)*(stopIsFirst==1),0, +82,destTerminalTime,Terminal time (minutes) at destination,,@terminalTimeAtDestination, +83,destTerminalTime,Terminal time (minutes) at destination--not counted at home,(inbound==1)*(stopIsLast==1),0, +84,totalTerminalTime,Total Terminal time (minutes),,(originTerminalTime+destTerminalTime), +85,originHourlyParkingCost,Peak hourly parking cost at trip origin,,@hourlyPeakParkingCostAtOrigin, +86,destHourlyParkingCost,Peak hourly parking cost at trip destination,,@hourlyPeakParkingCostAtDestination, +87,tourDuration,Full duration of tour,,@tourDuration, +88,originDuration,Stop Duration if Origin of trip is at home,(inbound==0)*(stopIsFirst==1),0, +89,originDuration,Stop Duration if Origin of trip is at primary destination,(inbound==1)*(stopIsFirst==1)*(freeParkingAvailable==2),tourDuration, +90,originDuration,Stop Duration Origin of tirp is at an intermediate stop,stopIsFirst==0,1, +91,destDuration,Stop Duration if Destination of trip is at home,(inbound==1)*(stopIsLast==1),0, +92,destDuration,Stop Duration if Destination of trip is at primary destination,(inbound==0)*(stopIsLast==1)*(freeParkingAvailable==2),tourDuration, +93,destDuration,Stop Duration if Destination of trip is at an intermediate sotp,stopIsLast==0,1, +94,originParkingCost,Parking cost at trip origin,,originDuration*originHourlyParkingCost, +95,destParkingCost,Parking cost at trip destination,,destDuration*destHourlyParkingCost, +96,totalParkingCost,Total parking cost,,(originParkingCost+destParkingCost)/2, +97,tripTopology,Zone topology,,"if(inbound==1,@originTopology,@destinationTopology)", +98,originDensityIndex,Origin density index,,"if(inbound==1,@destinationDensityIndex,@originDensityIndex)", +99,originDensityApplied,Origin density index matters for this purpose,,1, +100,densityIndex,Zone density index (hhdens*empdens)/(hhdens+empdens),,"if(inbound==1,@originDensityIndex,@destinationDensityIndex)", +101,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +102,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +103,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +104,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +105,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +106,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA,1,0)*if(timeOfDay<=upperAM,2,0)", +130,tripPeriod,"trip departs in MD period, set index to 3",tripPeriod==0,"if(timeOfDay>upperAM,1,0)*if(timeOfDay<=upperMD,3,0)", +131,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperMD,1,0)*if(timeOfDay<=upperPM,4,0)", +132,tripPeriod,"trip departs in PM period, set index to 4",tripPeriod==0,"if(timeOfDay>upperPM,1,0)*if(timeOfDay<=upperNT,5,0)", +133,tripPeriod,"trip departs in EV period, set index to 5",tripPeriod==0,"if(timeOfDay>upperNT,6,0)", +134,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +135,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +136,walkTransitPossible,Walk to transit is available,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +137,driveTransitPossible,Drive to transit is available,outbound,walkTransitDest*(1-zeroAutoHh), +138,driveTransitPossible,Drive to transit is available,inbound,walkTransitOrig*(1-zeroAutoHh), +139,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +140,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +141,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +142,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +143,walk_dist,Walking distance,,DISTWALK,od +144,bike_dist,Biking distance,,DISTBIKE,od +145,sovAvailable,SOV mode is available,,"if(SOV_TIME[tripPeriod]>0,1,0)",od +146,hov2Available,HOV 2 mode is available,,"if(HOV2_TIME[tripPeriod]>0,1,0)",od +147,hov3Available,HOV 3+ mode is available,,"if(HOV3_TIME[tripPeriod]>0,1,0)",od +148,walkTransitAvailable,Walk local mode is available,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +149,pnrTransitAvailable,Park and ride transit is available for outbound tour,driveTransitPossible*(tourMode==7)*outbound,(PNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +150,pnrTransitAvailable,Park and ride transit is available for inbound tour,driveTransitPossible*(tourMode==7)*inbound,(WKL_TRN_PNR_TOTIVT[tripPeriod]/100>0),od +151,knrTransitAvailable,Kiss and ride transit is available for outbound tour,driveTransitPossible*(tourMode==8)*outbound,(KNR_TRN_WLK_TOTIVT[tripPeriod]/100>0),od +152,knrTransitAvailable,Kiss and ride transit is available for inbound tour,driveTransitPossible*(tourMode==8)*inbound,(WKL_TRN_KNR_TOTIVT[tripPeriod]/100>0),od +153,,Drive alone - Unavailable,,sovAvailable==0, +154,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +155,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16) * (useAV==0),1, +156,,Drive alone - Unavailable for joint tours,jointTour==1,1, +157,,Drive alone - Unavailable if didn't drive to work,subtour==1,tourModeIsSOV==0, +158,,Drive alone - In-vehicle time,sovAvailable,c_ivt*SOV_TIME[tripPeriod]*autoIVTFactor,od +159,,Drive alone - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +160,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*SOV_DIST[tripPeriod])*autoCPMFactor,od +161,,Drive alone - Parking cost,sovAvailable,c_cost*totalParkingCost*autoParkingCostFactor, +162,,Drive alone - Bridge toll,sovAvailable,c_cost*SOV_BTOLL[tripPeriod],od +163,,Drive alone - Value toll,sovAvailable,"c_cost*SOV_VTOLL[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +164,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +165,,Shared ride 2 - Unavailable,,hov2Available==0, +166,,Shared ride 2 - Unavailable based on party size,jointTour==1,numberOfParticipantsInJointTour>2, +167,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*HOV2_TIME[tripPeriod]*autoIVTFactor,od +168,,Shared ride 2 - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +169,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*HOV2_DIST[tripPeriod])*autoCPMFactor,od +170,,Shared ride 2 - Parking cost,hov2Available,c_cost*totalParkingCost/costShareSr2*autoParkingCostFactor, +171,,Shared ride 2 - Bridge toll,hov2Available,c_cost*HOV2_BTOLL[tripPeriod]/costShareSr2,od +172,,Shared ride 2 - Value toll,hov2Available,"c_cost*HOV2_VTOLL[tripPeriod]/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +173,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +174,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +175,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +176,,Shared ride 3+ - Unavailable,,hov3Available==0, +177,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*HOV3_TIME[tripPeriod]*autoIVTFactor,od +178,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(totalTerminalTime)*autoTermTimeFactor, +179,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*HOV3_DIST[tripPeriod])*autoCPMFactor,od +180,,Shared ride 3+ - Parking cost,hov3Available,c_cost*totalParkingCost/costShareSr3*autoParkingCostFactor, +181,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*HOV3_BTOLL[tripPeriod]/costShareSr3,od +182,,Shared ride 3+ - Value toll,hov3Available,"c_cost*HOV3_VTOLL[tripPeriod]/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)",od +183,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +184,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +185,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +186,,Walk - Time up to 1 mile,,"c_walkTimeShort*min(walk_dist*60/walkSpeed, walkThresh*60/walkSpeed)",od +187,,Walk - Time beyond 1 mile,,"c_walkTimeLong*max(walk_dist*60/walkSpeed - walkThresh*60/walkSpeed, 0)",od +188,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +189,,Walk - Topology,,c_topology_walk*tripTopology, +190,,Bike - Unavailable if didn't bike to work,(subtour==1)*(tourModeIsBike==0),1, +191,,Bike - Time up to 6 miles,,"c_bikeTimeShort*min(bike_dist*60/bikeSpeed, bikeThresh*60/bikeSpeed)",od +192,,Bike - Time beyond 6 of a miles,,"c_bikeTimeLong*max(bike_dist*60/bikeSpeed - bikeThresh*60/bikeSpeed, 0)",od +193,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +194,,Bike - Topology,,c_topology_bike*tripTopology, +195,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +196,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*WLK_TRN_WLK_IVT_LOC[tripPeriod]/100,od +197,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*WLK_TRN_WLK_IVT_EXP[tripPeriod]/100,od +198,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*WLK_TRN_WLK_IVT_LRT[tripPeriod]/100,od +199,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*WLK_TRN_WLK_IVT_FRY[tripPeriod]/100,od +200,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*WLK_TRN_WLK_IVT_HVY[tripPeriod]/100,od +201,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*WLK_TRN_WLK_IVT_COM[tripPeriod]/100,od +202,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiWait*min(WLK_TRN_WLKIWAIT[tripPeriod]/100,waitThresh)",od +203,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiWait*max(WLK_TRN_WLKIWAIT[tripPeriod]/100-waitThresh,0)",od +204,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*WLK_TRN_WLKXWAIT[tripPeriod]/100,od +205,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*max(WLK_TRN_WLKBOARDS[tripPeriod]-1,0)",od +206,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*originWalkTime, +207,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*destinationWalkTime, +208,,Walk to Transit - Walk other time,walkTransitAvailable,c_waux*WLK_TRN_WLKWAUX[tripPeriod]/100,od +209,,Walk to Transit - Fare,walkTransitAvailable,"c_cost*WLK_TRN_WLKFAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)",od +210,,Walk to Transit - Destination zone densityIndex,walkTransitAvailable,c_densityIndex*densityIndex, +211,,Walk to Transit - Topology,walkTransitAvailable,c_topology_trn*tripTopology, +212,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Park and Ride Transit - Unavailable (outbound),outbound,(pnrAvailableOutbound)==0, +214,,Park and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +215,,Park and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +216,,Park and Ride Transit - In-vehicle time (outbound),pnrAvailableOutbound,c_ivt*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +217,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),pnrAvailableOutbound,(c_ivt_com-c_ivt)*PNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +218,,Park and Ride Transit - Short iwait time (outbound),pnrAvailableOutbound,"c_shortiWait*min(PNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +219,,Park and Ride Transit - Long iwait time (outbound),pnrAvailableOutbound,"c_longiWait*max(PNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +220,,Park and Ride Transit - transfer wait time (outbound),pnrAvailableOutbound,c_xwait*PNR_TRN_WLK_XWAIT[tripPeriod]/100,od +221,,Park and Ride Transit - number of transfers (outbound),pnrAvailableOutbound,"c_xfers_drv*max(PNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +222,,Park and Ride Transit - Drive time (outbound),pnrAvailableOutbound,c_dtim*PNR_TRN_WLK_DTIM[tripPeriod]/100,od +223,,Park and Ride Transit - Walk egress time (outbound),pnrAvailableOutbound,c_wegr*destinationWalkTime, +224,,Park and Ride Transit - Walk other time (outbound),pnrAvailableOutbound,c_waux*PNR_TRN_WLK_WAUX[tripPeriod]/100,od +225,,Park and Ride Transit - Fare and operating cost (outbound),pnrAvailableOutbound,"c_cost*(PNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(PNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +226,,Park and Ride Transit - Ratio of drive access distance to OD distance (outbound),pnrAvailableOutbound,c_dacc_ratio*(PNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +227,,Park and Ride Transit - Destination zone densityIndex (outbound),pnrAvailableOutbound,c_densityIndex*densityIndex, +228,,Park and Ride Transit - Topology (outbound),pnrAvailableOutbound,c_topology_trn*tripTopology, +229,,Park and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +230,,Park and Ride Transit - Unavailable,inbound,(pnrAvailableInbound)==0, +231,,Park and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +232,,Park and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +233,,Park and Ride Transit - In-vehicle time,pnrAvailableInbound,c_ivt*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +234,,Park and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),pnrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_PNR_TOTIVT[tripPeriod]/100,od +235,,Park and Ride Transit - Short iwait time,pnrAvailableInbound,"c_shortiWait*min(WLK_TRN_PNR_IWAIT[tripPeriod]/100,waitThresh)",od +236,,Park and Ride Transit - Long iwait time,pnrAvailableInbound,"c_longiWait*max(WLK_TRN_PNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +237,,Park and Ride Transit - transfer wait time,pnrAvailableInbound,c_xwait*WLK_TRN_PNR_XWAIT[tripPeriod]/100,od +238,,Park and Ride Transit - number of transfers,pnrAvailableInbound,"c_xfers_drv*max(WLK_TRN_PNR_BOARDS[tripPeriod]-1,0)",od +239,,Park and Ride Transit - Drive time,pnrAvailableInbound,c_dtim*WLK_TRN_PNR_DTIM[tripPeriod]/100,od +240,,Park and Ride Transit - Walk access time (inbound),pnrAvailableInbound,c_wacc*originWalkTime, +241,,Park and Ride Transit - Walk other time,pnrAvailableInbound,c_waux*WLK_TRN_PNR_WAUX[tripPeriod]/100,od +242,,Park and Ride Transit - Fare and operating cost,pnrAvailableInbound,"c_cost*(WLK_TRN_PNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_PNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +243,,Park and Ride Transit - Ratio of drive access distance to OD distance,pnrAvailableInbound,c_dacc_ratio*(WLK_TRN_PNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +244,,Park and Ride Transit - Destination zone densityIndex,pnrAvailableInbound,c_densityIndex*densityIndex, +245,,Park and Ride Transit - Topology,pnrAvailableInbound,c_topology_trn*tripTopology, +246,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +247,,Kiss and Ride Transit - Unavailable (outbound),outbound,(knrAvailableOutbound)==0, +248,,Kiss and Ride Transit - Unavailable for zero auto households (outbound),(autos==0)*outbound,1, +249,,Kiss and Ride Transit - Unavailable for persons less than 16 (outbound),(age<16)*outbound,1, +250,,Kiss and Ride Transit - In-vehicle time (outbound),knrAvailableOutbound,c_ivt*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +251,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt) (outbound),knrAvailableOutbound,(c_ivt_com-c_ivt)*KNR_TRN_WLK_TOTIVT[tripPeriod]/100,od +252,,Kiss and Ride Transit - Short iwait time (outbound),knrAvailableOutbound,"c_shortiWait*min(KNR_TRN_WLK_IWAIT[tripPeriod]/100,waitThresh)",od +253,,Kiss and Ride Transit - Long iwait time (outbound),knrAvailableOutbound,"c_longiWait*max(KNR_TRN_WLK_IWAIT[tripPeriod]/100-waitThresh,0)",od +254,,Kiss and Ride Transit - transfer wait time (outbound),knrAvailableOutbound,c_xwait*KNR_TRN_WLK_XWAIT[tripPeriod]/100,od +255,,Kiss and Ride Transit - number of transfers (outbound),knrAvailableOutbound,"c_xfers_drv*max(KNR_TRN_WLK_BOARDS[tripPeriod]-1,0)",od +256,,Kiss and Ride Transit - Drive time (outbound),knrAvailableOutbound,c_dtim*KNR_TRN_WLK_DTIM[tripPeriod]/100,od +257,,Kiss and Ride Transit - Walk egress time (outbound),knrAvailableOutbound,c_wegr*destinationWalkTime, +258,,Kiss and Ride Transit - Walk other time (outbound),knrAvailableOutbound,c_waux*KNR_TRN_WLK_WAUX[tripPeriod]/100,od +259,,Kiss and Ride Transit - Fare and operating cost (outbound),knrAvailableOutbound,"c_cost*(KNR_TRN_WLK_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(KNR_TRN_WLK_DDIST[tripPeriod]/100*costPerMile))","od,od" +260,,Kiss and Ride Transit - Ratio of drive access distance to OD distance (outbound),knrAvailableOutbound,c_dacc_ratio*(KNR_TRN_WLK_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +261,,Kiss and Ride Transit - Destination zone densityIndex (outbound),knrAvailableOutbound,c_densityIndex*densityIndex, +262,,Kiss and Ride Transit - Topology (outbound),knrAvailableOutbound,c_topology_trn*tripTopology, +263,,Kiss and Ride Transit - Person is less than 10 years old (outbound),(age<=10)*outbound,c_age010_trn, +264,,Kiss and Ride Transit - Unavailable,inbound,(knrAvailableInbound)==0, +265,,Kiss and Ride Transit - Unavailable for zero auto households,(autos==0)*inbound,1, +266,,Kiss and Ride Transit - Unavailable for persons less than 16,(age<16)*inbound,1, +267,,Kiss and Ride Transit - In-vehicle time,knrAvailableInbound,c_ivt*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +268,,Kiss and Ride Transit - In-vehicle time on commuter rail (incremental w/ ivt),knrAvailableInbound,(c_ivt_com-c_ivt)*WLK_TRN_KNR_TOTIVT[tripPeriod]/100,od +269,,Kiss and Ride Transit - Short iwait time,knrAvailableInbound,"c_shortiWait*min(WLK_TRN_KNR_IWAIT[tripPeriod]/100,waitThresh)",od +270,,Kiss and Ride Transit - Long iwait time,knrAvailableInbound,"c_longiWait*max(WLK_TRN_KNR_IWAIT[tripPeriod]/100-waitThresh,0)",od +271,,Kiss and Ride Transit - transfer wait time,knrAvailableInbound,c_xwait*WLK_TRN_KNR_XWAIT[tripPeriod]/100,od +272,,Kiss and Ride Transit - number of transfers,knrAvailableInbound,"c_xfers_drv*max(WLK_TRN_KNR_BOARDS[tripPeriod]-1,0)",od +273,,Kiss and Ride Transit - Drive time,knrAvailableInbound,c_dtim*WLK_TRN_KNR_DTIM[tripPeriod]/100,od +274,,Kiss and Ride Transit - Walk access time (inbound),knrAvailableInbound,c_wacc*originWalkTime, +275,,Kiss and Ride Transit - Walk other time,knrAvailableInbound,c_waux*WLK_TRN_KNR_WAUX[tripPeriod]/100,od +276,,Kiss and Ride Transit - Fare and operating cost,knrAvailableInbound,"c_cost*(WLK_TRN_KNR_FAR[tripPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+(WLK_TRN_KNR_DDIST[tripPeriod]/100*costPerMile))","od,od" +277,,Kiss and Ride Transit - Ratio of drive access distance to OD distance,knrAvailableInbound,c_dacc_ratio*(WLK_TRN_KNR_DDIST[tripPeriod]/100/SOV_DIST[tripPeriod]),"od,od" +278,,Kiss and Ride Transit - Destination zone densityIndex,knrAvailableInbound,c_densityIndex*densityIndex, +279,,Kiss and Ride Transit - Topology,knrAvailableInbound,c_topology_trn*tripTopology, +280,,Park and Ride Transit - Person is less than 10 years old,(age<=10)*inbound,c_age010_trn, +281,,Taxi - In-vehicle time,,c_ivt*HOV2_TIME[tripPeriod],od +282,,Taxi - Wait time,,c_ivt*1.5*@waitTimeTaxi, +283,,Taxi - Tolls,,c_cost*HOV2_VTOLL[tripPeriod],od +284,,Taxi - Bridge toll,,c_cost*HOV2_BTOLL[tripPeriod],od +285,,Taxi - Fare,,c_cost*(costInitialTaxi + HOV2_DIST[tripPeriod] * costPerMileTaxi + HOV2_DIST[tripPeriod] * costPerMinuteTaxi )*100,"od,od" +286,,Auto tour mode availability,tourModeIsAuto,1, +287,,Walk tour mode availability,tourModeIsWalk,1, +288,,Bike tour mode availability,tourModeIsBike,1, +289,,Walk to Transit tour mode availability,tourModeIsWalkTransit,1, +290,,Drive to Transit tour modes availability,tourModeIsDriveTransit,1, +291,,Ride Hail tour modes availability,tourModeIsRideHail,1, +292,,Drive Alone tour mode ASC -- shared ride 2,indivTour*(tourMode==1),-999, +293,,Drive Alone tour mode ASC -- shared ride 3+,indivTour*(tourMode==1),-999, +294,,Drive Alone tour mode ASC -- walk,indivTour*(tourMode==1),-20.424509892826499, +295,,Drive Alone tour mode ASC -- ride hail,indivTour*(tourMode==1),-7, +296,,Shared Ride 2 tour mode ASC -- shared ride 2,indivTour*(tourMode==2),0.138963274259018, +297,,Shared Ride 2 tour mode ASC -- shared ride 3+,indivTour*(tourMode==2),-999, +298,,Shared Ride 2 tour mode ASC -- walk,indivTour*(tourMode==2),-0.31389822091724101, +299,,Shared Ride 2 tour mode ASC -- ride hail,indivTour*(tourMode==2),-7, +300,,Shared Ride 3+ tour mode ASC -- shared ride 2,indivTour*(tourMode==3),-0.54741977143629195, +301,,Shared Ride 3+ tour mode ASC -- shared ride 3+,indivTour*(tourMode==3),-1.4919035101870501E-2, +302,,Shared Ride 3+ tour mode ASC -- walk,indivTour*(tourMode==3),-0.39003957711760201, +303,,Shared Ride 3+ tour mode ASC -- ride hail,indivTour*(tourMode==3),-107.43956048344501, +304,,Walk tour mode ASC -- ride hail,indivTour*tourModeIsWalk,-7, +305,,Bike tour mode ASC -- walk,indivTour*tourModeIsBike,-10.153436763870699, +306,,Bike tour mode ASC -- ride hail,indivTour*tourModeIsBike,-7, +307,,Walk to Transit tour mode ASC -- transit,indivTour*tourModeIsWalkTransit,0.85560272226612, +308,,Walk to Transit tour mode ASC -- shared ride 2,indivTour*tourModeIsWalkTransit,-3.70009322635266, +309,,Walk to Transit tour mode ASC -- shared ride 3+,indivTour*tourModeIsWalkTransit,-4.0840016501087, +310,,Walk to Transit tour mode ASC -- walk,indivTour*tourModeIsWalkTransit,2.1996281914776898, +311,,Walk to Transit tour mode ASC -- ride hail,indivTour*tourModeIsWalkTransit,-2.2395745968381902, +312,,Drive to Transit tour mode ASC -- drive to transit,indivTour*tourModeIsDriveTransit,2.0859181492209098, +313,,Drive to Transit tour mode ASC -- ride hail,indivTour*tourModeIsDriveTransit,-1.2625869372018199, +314,,Ride Hail tour mode ASC -- shared ride 2,indivTour*tourModeIsRideHail,-2.2145610603410799, +315,,Ride Hail tour mode ASC -- shared ride 3+,indivTour*tourModeIsRideHail,-7, +316,,Ride Hail tour mode ASC -- walk,indivTour*tourModeIsRideHail,-0.36462068364988998, +317,,Ride Hail tour mode ASC -- walk to transit,indivTour*tourModeIsRideHail,-3.4047752635151101, +318,,Ride Hail tour mode ASC -- taxi,indivTour*tourModeIsRideHail,0.19344426539634008, +319,,Walk not available for long distances,(tourMode!=4)*(walk_dist>3),1,od +320,,Bike not available for long distances,(tourMode!=5)*(bike_dist>8),1,od +321,,"Origin density index, walk, bike, walk-transit, TNC",originDensityApplied,"max(c_originDensityIndex*originDensityIndex,c_originDensityIndexMax)", +322,,Walk-express penalty for intermediate stops,(stopIsFirst+stopIsLast)<2,-0.27900000000000003, diff --git a/utilities/make-mode-choice/update-university.csv b/utilities/make-mode-choice/update-university.csv new file mode 100644 index 000000000..7abc13da0 --- /dev/null +++ b/utilities/make-mode-choice/update-university.csv @@ -0,0 +1,296 @@ +row_number,token,description,filter,formula,index +1,terminalTime,Terminal time (minutes),,TERMINAL,z +2,freeParkingAllowed,"Switch: if 1, travelers assumed to have subsidized parking to not pay the parking fee",,0, +3,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed,@freeParking, +4,hourlyParkingCost,Peak hourly parking cost,freeParkingAvailable==2,PRKCST,z +5,destTopology,Destination zone topology,,TOPOLOGY,z +6,destCounty,Destination County,,COUNTY,z +7,origCounty,Origin County,,@origCounty, +8,valueOfTime,Value of Time,,@valueOfTime, +9,autos,Household autos,,@autos, +10,workers,Household workers,,@workers, +11,hhSize,Household size (number of persons),,@hhSize, +12,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +13,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +14,age,Person age,,@age, +15,timeOutbound,Time of day for outbound trip,,@timeOutbound, +16,timeInbound,Time of day for inbound trip,,@timeInbound, +17,tourDuration,"Tour duration, in hours",freeParkingAvailable==2,@tourDuration, +18,tourCategoryJoint,Joint tour,,@tourCategoryJoint, +19,numberOfParticipantsInJointTour,Number of participants in joint tour,tourCategoryJoint,@numberOfParticipantsInJointTour, +20,tourCategorySubtour,Work based subtour,,@tourCategorySubtour, +21,workTourModeIsSOV,Mode for work tour is SOV,tourCategorySubtour,@workTourModeIsSOV, +22,workTourModeIsBike,Mode for work tour is Bike,tourCategorySubtour,@workTourModeIsBike, +23,destZoneAreaType,Area type,,@areaType, +24,originDensityIndex,Origin zone density index,,@originDensityIndex, +25,densityIndex,Destination zone density index (hhdens*empdens)/(hhdens+empdens),,@densityIndex, +26,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +27,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +28,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +29,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +30,c_ivt,In-vehicle time coefficient,,-2.24E-2, +31,c_ivt_lrt,In-vehicle time coefficient on light rail,,0.90 * c_ivt, +32,c_ivt_ferry,In-vehicle time coefficient on ferry,,0.80 * c_ivt, +33,c_ivt_exp,In-vehicle time coefficient on express bus,,1.00 * c_ivt, +34,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,0.80 * c_ivt, +35,c_ivt_com,In-vehicle time coefficient on commuter rail,,0.70 * c_ivt, +36,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,2.00 * c_ivt, +37,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,10.00 * c_ivt, +38,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,4.00 * c_ivt, +39,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,20.00 * c_ivt, +40,c_cost,"Cost coefficient, derived from Value of Time",,(0.60 * c_ivt) / valueOfTime, +41,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,2.00 * c_ivt, +42,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,1.00 * c_ivt, +43,c_wacc,Walk access time coefficient,,2.00 * c_ivt, +44,c_wegr,Walk egress time coefficient,,2.00 * c_ivt, +45,c_waux,Walk auxilliary time coefficient,,2.00 * c_ivt, +46,c_dtim,Drive access time coefficient,,2.00 * c_ivt, +47,c_xwait,Transfer wait time coefficient,,2.00 * c_ivt, +48,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +49,c_xfers_wlk,"Transfer penalty, walk",,30.00 * c_ivt, +50,c_xfers_drv,"Transfer penalty, drive-transit",,40.00 * c_ivt, +51,c_drvtrn_distpen_0,Drive-transit OD distance penalty at zero miles,,270.00 * c_ivt, +52,c_drvtrn_distpen_max,Drive-transit OD distance penalty miles at phase-out,,15, +53,c_topology_walk,"Topology dummy coefficient, applied to walk",,15.00 * c_ivt, +54,c_topology_bike,"Topology dummy coefficient, applied to bike",,20.00 * c_ivt, +55,c_topology_trn,"Topology dummy coefficient, applied to transit",,2.20 * c_ivt, +56,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,-0.20 * c_ivt, +57,c_age1619_da,Age 16-19--Drive Alone,,61.66517857 * c_ivt, +58,c_age010_trn,Age 0-10--Transit,,69.41071429 * c_ivt, +59,c_age16p_sr,Age 16+ -- Shared Ride,,0, +60,c_hhsize1_sr,Household Size 1--Shared Ride,,0, +61,c_hhsize2_sr,Household Size 2--Shared Ride,,28.38839286 * c_ivt, +62,costPerMile,Auto operating cost per mile,,18.29, +63,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +64,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +65,waitThresh,Wait time threshold to segment coefficients (minutes of directional wait),,10, +66,walkThresh,Walk threshold to segment coefficients (miles),,1.5, +67,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333331, +68,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666663, +69,walkSpeed,Walk speed (miles per hour),,3, +70,bikeThresh,Bike threshold to segment coefficients (miles),,6, +71,bikeSpeed,Bike speed (miles per hour),,12, +72,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +73,indivTour,Individual tour,tourCategoryJoint==0,1, +74,upperEA,Upper limit on time of day for the Early morning time period,,5, +75,upperAM,Upper limit on time of day for the AM peak time period,,9, +76,upperMD,Upper limit on time of day for the Midday time period,,14, +77,upperPM,Upper limit on time of day for the PM peak time period,,18, +78,upperEV,Upper limit on time of day for the Evening time period,,21, +79,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +80,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +81,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +82,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +83,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +84,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +85,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +86,walkTransitPossible,Walk to transit is possible,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +87,driveTransitPossible,Drive to transit is possible,,walkTransitDest*(1-zeroAutoHh), +88,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +89,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +90,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +91,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +92,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA)*(timeOutbound<=upperAM),2, +109,outPeriod,Outbound period index -- 3 if Midday outbound period,(timeOutbound>upperAM)*(timeOutbound<=upperMD),3, +110,outPeriod,Outbound period index -- 4 if PM Peak outbound period,(timeOutbound>upperMD)*(timeOutbound<=upperPM),4, +111,outPeriod,Outbound period index -- 5 if Evening Peak outbound period,(timeOutbound>upperPM)*(timeOutbound<=upperEV),5, +112,outPeriod,Outbound period index -- 6 if Night outbound period,(timeOutbound>upperEV),6, +113,inPeriod,Inbound period index -- 1 if Early morning inbound period,,"if(timeInbound<=upperEA,1,0)", +114,inPeriod,Inbound period index -- 2 if AM Peak inbound period,inPeriod==0,"if(timeInbound>upperEA,1,0)*if(timeInbound<=upperAM,2,0)", +115,inPeriod,Inbound period index -- 3 if Midday inbound period,inPeriod==0,"if(timeInbound>upperAM,1,0)*if(timeInbound<=upperMD,3,0)", +116,inPeriod,Inbound period index -- 4 if PM Peak inbound period,inPeriod==0,"if(timeInbound>upperMD,1,0)*if(timeInbound<=upperPM,4,0)", +117,inPeriod,Inbound period index -- 5 if Evening inbound period,inPeriod==0,"if(timeInbound>upperPM,1,0)*if(timeInbound<=upperEV,4,0)", +118,inPeriod,Inbound period index -- 6 if Night inbound period,inPeriod==0,"if(timeInbound>upperNT,6,0)", +119,sovOut,SOV outbound mode is available,,"if(SOV_TIME[outPeriod]>0,1,0)",od +120,sovIn,SOV inbound mode is available,,"if(SOV_TIME[inPeriod]>0,1,0)",do +121,sovAvailable,SOV mode is available,sovOut,sovIn, +122,hov2Out,HOV 2 outbound mode is available,,"if(HOV2_TIME[outPeriod]>0,1,0)",od +123,hov2In,HOV 2 inbound mode is available,,"if(HOV2_TIME[inPeriod]>0,1,0)",do +124,hov2Available,HOV 2 mode is available,hov2Out,hov2In, +125,hov3Out,HOV 3+ outbound mode is available,,"if(HOV3_TIME[outPeriod]>0,1,0)",od +126,hov3In,HOV 3+ inbound mode is available,,"if(HOV3_TIME[inPeriod]>0,1,0)",do +127,hov3Available,HOV 3+ mode is available,hov3Out,hov3In, +128,walkTransitAvailable,Walk transit mode is available for the tour,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_WLK_TOTIVT[inPeriod]/100>0),"od,do,od,do" +129,pnrTransitAvailable,Park and ride transit mode is available for the tour,driveTransitPossible,(PNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_PNR_TOTIVT[inPeriod]/100>0),"od,do" +130,knrTransitAvailable,Kiss and ride transit mode is available for the tour,driveTransitPossible,(KNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_KNR_TOTIVT[inPeriod]/100>0),"od,do,od,do" +131,,Drive alone - Unavailable,,sovAvailable==0, +132,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +133,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16)*(useAV==0),1, +134,,Drive alone - Unavailable for joint tours,tourCategoryJoint==1,1, +135,,Drive alone - Unavailable if didn't drive to work,tourCategorySubtour==1,workTourModeIsSOV==0, +136,,Drive alone - In-vehicle time,sovAvailable,c_ivt*(SOV_TIME[outPeriod]+SOV_TIME[inPeriod])*autoIVTFactor,"od,do" +137,,Drive alone - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +138,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*(SOV_DIST[outPeriod]+SOV_DIST[inPeriod]))*autoCPMFactor,"od,do" +139,,Drive alone - Parking cost,sovAvailable,c_cost*dailyParkingCost*autoParkingCostFactor, +140,,Drive alone - Bridge toll,sovAvailable,c_cost*(SOV_BTOLL[outPeriod]+SOV_BTOLL[inPeriod]),"od,do" +141,,Drive alone - Value toll,sovAvailable,"c_cost*(SOV_VTOLL[outPeriod]+SOV_VTOLL[inPeriod])*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +142,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +143,,Shared ride 2 - Unavailable,,hov2Available==0, +144,,Shared ride 2 - Unavailable based on party size,tourCategoryJoint==1,numberOfParticipantsInJointTour>2, +145,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*(HOV2_TIME[outPeriod]+HOV2_TIME[inPeriod])*autoIVTFactor,"od,do" +146,,Shared ride 2 - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +147,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*(HOV2_DIST[outPeriod]+HOV2_DIST[inPeriod]))*autoCPMFactor,"od,do" +148,,Shared ride 2 - Parking cost,hov2Available,c_cost*dailyParkingCost/costShareSr2*autoParkingCostFactor, +149,,Shared ride 2 - Bridge toll,hov2Available,c_cost*(HOV2_BTOLL[outPeriod]+HOV2_BTOLL[inPeriod])/costShareSr2,"od,do" +150,,Shared ride 2 - Value toll,hov2Available,"c_cost*(HOV2_VTOLL[outPeriod]+HOV2_VTOLL[inPeriod])/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +151,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +152,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +153,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +154,,Shared ride 3+ - Unavailable,,hov3Available==0, +155,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*(HOV3_TIME[outPeriod]+HOV3_TIME[inPeriod])*autoIVTFactor,"od,do" +156,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +157,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*(HOV3_DIST[outPeriod]+HOV3_DIST[inPeriod]))*autoCPMFactor,"od,do" +158,,Shared ride 3+ - Parking cost,hov3Available,c_cost*dailyParkingCost/costShareSr3*autoParkingCostFactor, +159,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*(HOV3_BTOLL[outPeriod]+HOV3_BTOLL[inPeriod])/costShareSr3,"od,do" +160,,Shared ride 3+ - Value toll,hov3Available,"c_cost*(HOV3_VTOLL[outPeriod]+HOV3_VTOLL[inPeriod])/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +161,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +162,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +163,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +164,,Walk - Time up to 2 miles,,"c_walkTimeShort*min((DISTWALK+DISTWALK)*60/walkSpeed, walkThresh*2*60/walkSpeed)","od,do" +165,,Walk - Time beyond 2 of a miles,,"c_walkTimeLong*max((DISTWALK+DISTWALK)*60/walkSpeed - walkThresh*2*60/walkSpeed, 0)","od,do" +166,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +167,,Walk - Topology,,c_topology_walk*destTopology, +168,,Bike - Unavailable if didn't bike to work,(tourCategorySubtour==1)*(workTourModeIsBike==0),1, +169,,Bike - Time up to 2 miles,,"c_bikeTimeShort*min((DISTBIKE+DISTBIKE)*60/bikeSpeed, bikeThresh*2*60/bikeSpeed)","od,do" +170,,Bike - Time beyond 2 of a miles,,"c_bikeTimeLong*max((DISTBIKE+DISTBIKE)*60/bikeSpeed - bikeThresh*2*60/bikeSpeed, 0)","od,do" +171,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +172,,Bike - Topology,,c_topology_bike*destTopology, +173,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +174,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*(WLK_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_WLK_IVT_LOC[inPeriod]/100),"od,do" +175,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*(WLK_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_WLK_IVT_EXP[inPeriod]/100),"od,do" +176,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*(WLK_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_WLK_IVT_LRT[inPeriod]/100),"od,do" +177,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*(WLK_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_WLK_IVT_FRY[inPeriod]/100),"od,do" +178,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*(WLK_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_WLK_IVT_HVY[inPeriod]/100),"od,do" +179,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*(WLK_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_WLK_IVT_COM[inPeriod]/100),"od,do" +180,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiwait*(min(WLK_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_WLK_IWAIT[inPeriod]/100,waitThresh))","od,do" +181,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiwait*(max(WLK_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_WLK_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +182,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*(WLK_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_WLK_XWAIT[inPeriod]/100),"od,do" +183,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*(max(WLK_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_WLK_BOARDS[inPeriod]-1,0))","od,do" +184,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*(originWalkTime+originWalkTime), +185,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*(destinationWalkTime+destinationWalkTime), +186,,Walk to Transit - Walk other time,walkCommuterAvailable,c_waux*(WLK_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_WLK_WAUX[inPeriod]/100),"od,do" +187,,Walk to Transit - Fare,walkCommuterAvailable,"c_cost*(WLK_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_WLK_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))","od,do" +188,,Walk to Transit - Destination zone densityIndex,walkCommuterAvailable,c_densityIndex*densityIndex, +189,,Walk to Transit - Topology,walkCommuterAvailable,c_topology_trn*destTopology, +190,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +191,,Park and ride Transit - Unavailable,,pnrTransitAvailable==0, +192,,Park and ride Transit - Unavailable for zero auto households,autos==0,1, +193,,Park and ride Transit - Unavailable for persons less than 16,age<16,1, +194,,Park and ride Transit - In-vehicle time on local bus,pnrTransitAvailable,c_ivt*(PNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_PNR_IVT_LOC[inPeriod]/100),"od,do" +195,,Park and ride Transit - In-vehicle time on express bus,pnrTransitAvailable,c_ivt_exp*(PNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_PNR_IVT_EXP[inPeriod]/100),"od,do" +196,,Park and ride Transit - In-vehicle time on light rail,pnrTransitAvailable,c_ivt_lrt*(PNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_PNR_IVT_LRT[inPeriod]/100),"od,do" +197,,Park and ride Transit - In-vehicle time on ferry,pnrTransitAvailable,c_ivt_ferry*(PNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_PNR_IVT_FRY[inPeriod]/100),"od,do" +198,,Park and ride Transit - In-vehicle time on heavy rail,pnrTransitAvailable,c_ivt_hvy*(PNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_PNR_IVT_HVY[inPeriod]/100),"od,do" +199,,Park and ride Transit - In-vehicle time on commuter rail,pnrTransitAvailable,c_ivt_com*(PNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_PNR_IVT_COM[inPeriod]/100),"od,do" +200,,Park and ride Transit - Short iwait time,pnrTransitAvailable,"c_shortiwait*(min(PNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_PNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +201,,Park and ride Transit - Long iwait time,pnrTransitAvailable,"c_longiwait*(max(PNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_PNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +202,,Park and ride Transit - transfer wait time,pnrTransitAvailable,c_xwait*(PNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_PNR_XWAIT[inPeriod]/100),"od,do" +203,,Park and ride Transit - number of transfers,pnrTransitAvailable,"c_xfers_drv*(max(PNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_PNR_BOARDS[inPeriod]-1,0))","od,do" +204,,Park and ride Transit - Drive time,pnrTransitAvailable,c_dtim*(PNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_PNR_DTIM[inPeriod]/100),"od,do" +205,,Park and ride Transit - Walk access time (at attraction end),pnrTransitAvailable,c_wacc*(destinationWalkTime), +206,,Park and ride Transit - Walk egress time (at attraction end),pnrTransitAvailable,c_wegr*(destinationWalkTime), +207,,Park and ride Transit - Walk other time,pnrTransitAvailable,c_waux*(PNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_PNR_WAUX[inPeriod]/100),"od,do" +208,,Park and ride Transit - Fare and operating cost,pnrTransitAvailable,"c_cost*((PNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_PNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +209,,Park and ride Transit - Ratio of drive access distance to OD distance,pnrTransitAvailable,c_dacc_ratio*((PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +210,,Park and ride Transit - Destination zone densityIndex,pnrTransitAvailable,c_densityIndex*densityIndex, +211,,Park and ride Transit - Topology,pnrTransitAvailable,c_topology_trn*destTopology, +212,,Park and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Kiss and ride Transit - Unavailable,,knrTransitAvailable==0, +214,,Kiss and ride Transit - Unavailable for zero auto households,autos==0,1, +215,,Kiss and ride Transit - Unavailable for persons less than 16,age<16,1, +216,,Kiss and ride Transit - In-vehicle time on local bus,knrTransitAvailable,c_ivt*(KNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_KNR_IVT_LOC[inPeriod]/100),"od,do" +217,,Kiss and ride Transit - In-vehicle time on express bus,knrTransitAvailable,c_ivt_exp*(KNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_KNR_IVT_EXP[inPeriod]/100),"od,do" +218,,Kiss and ride Transit - In-vehicle time on light rail,knrTransitAvailable,c_ivt_lrt*(KNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_KNR_IVT_LRT[inPeriod]/100),"od,do" +219,,Kiss and ride Transit - In-vehicle time on ferry,knrTransitAvailable,c_ivt_ferry*(KNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_KNR_IVT_FRY[inPeriod]/100),"od,do" +220,,Kiss and ride Transit - In-vehicle time on heavy rail,knrTransitAvailable,c_ivt_hvy*(KNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_KNR_IVT_HVY[inPeriod]/100),"od,do" +221,,Kiss and ride Transit - In-vehicle time on commuter rail,knrTransitAvailable,c_ivt_com*(KNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_KNR_IVT_COM[inPeriod]/100),"od,do" +222,,Kiss and ride Transit - Short iwait time,knrTransitAvailable,"c_shortiwait*(min(KNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_KNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +223,,Kiss and ride Transit - Long iwait time,knrTransitAvailable,"c_longiwait*(max(KNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_KNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +224,,Kiss and ride Transit - transfer wait time,knrTransitAvailable,c_xwait*(KNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_KNR_XWAIT[inPeriod]/100),"od,do" +225,,Kiss and ride Transit - number of transfers,knrTransitAvailable,"c_xfers_drv*(max(KNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_KNR_BOARDS[inPeriod]-1,0))","od,do" +226,,Kiss and ride Transit - Drive time,knrTransitAvailable,c_dtim*(KNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_KNR_DTIM[inPeriod]/100),"od,do" +227,,Kiss and ride Transit - Walk access time (at attraction end),knrTransitAvailable,c_wacc*(destinationWalkTime), +228,,Kiss and ride Transit - Walk egress time (at attraction end),knrTransitAvailable,c_wegr*(destinationWalkTime), +229,,Kiss and ride Transit - Walk other time,knrTransitAvailable,c_waux*(KNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_KNR_WAUX[inPeriod]/100),"od,do" +230,,Kiss and ride Transit - Fare and operating cost,knrTransitAvailable,"c_cost*((KNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_KNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +231,,Kiss and ride Transit - Ratio of drive access distance to OD distance,knrTransitAvailable,c_dacc_ratio*((KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +232,,Kiss and ride Transit - Destination zone densityIndex,knrTransitAvailable,c_densityIndex*densityIndex, +233,,Kiss and ride Transit - Topology,knrTransitAvailable,c_topology_trn*destTopology, +234,,Kiss and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +235,,Ride hail - In-vehicle time,,c_ivt*(HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]),"od,do" +236,,Ride hail - Wait time,,c_ivt*1.5*totalWaitTaxi, +237,,Ride hail - Tolls,,c_cost*(HOV2TOLL_VTOLL[outPeriod] + HOV2TOLL_VTOLL[inPeriod]),"od,do" +238,,Ride hail - Bridge toll,,c_cost*(HOV2TOLL_BTOLL[outPeriod] + HOV2TOLL_BTOLL[inPeriod]),"od,do" +239,,Ride hail - Fare,,c_cost*(costInitialTaxi*2 + (HOV2TOLL_DIST[outPeriod]+HOV2TOLL_DIST[inPeriod]) * costPerMileTaxi + (HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]) * costPerMinuteTaxi )*100,"od,do,od,do" +240,,Walk - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,1.2608880993596563, +241,,Walk - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,2.5045276894900903, +242,,Walk - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.78841341726425862, +243,,Bike - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-31.405421868572375, +244,,Bike - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,4.0590501661132876, +245,,Bike - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-0.10525880722592745, +246,,Shared ride 2 - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-43.740534506643428, +247,,Shared ride 2 - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.55702017699133688, +248,,Shared ride 2 - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-0.48219869422336836, +249,,Shared ride 3+ - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-42.624990489070008, +250,,Shared ride 3+ - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,-0.61209018058181708, +251,,Shared ride 3+ - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.6288271462222002, +252,,Walk to Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,3.3247644965402174, +253,,Walk to Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,8.8464008547332238, +254,,Walk to Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.14407522629676245, +255,,Park and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +256,,Park and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437599, +257,,Park and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656534, +258,,Kiss and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +259,,Kiss and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437599, +260,,Kiss and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656534, +261,,Taxi - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-14.413390978433416, +262,,Taxi - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,6.4845220535912729, +263,,Taxi - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.43767598393300017, +264,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-2.3505204046613182, +265,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6817039430815885, +266,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.787472888668602, +267,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.4556271225409212, +268,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-8.0967498335842354, +269,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.5927750116185742, +270,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.1279064343597331, +271,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,1.7942435719105556, +272,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,0.36718430827121318, +273,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.376360157302887, +274,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-2.4868225477082002, +275,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-2.3150366951619445, +276,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-1.5252089464233847, +277,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-6.2606050432642473, +278,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.4530509448000402, +279,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,0, +280,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6369494640971141, +281,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.0277331325007699, +282,,Taxi - Alternative-specific constant - Zero auto - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.5792091796996726, +283,,Taxi - Alternative-specific constant - Auto deficient - Joint Tours,tourCategoryJoint*autoDeficientHh,-9.8157175798197525, +284,,Taxi - Alternative-specific constant - Auto sufficient - Joint Tours,tourCategoryJoint*autoSufficientHh,-11.709876913156872, +285,,Walk to Transit - to CBD dummy,cbdDummy,1.5680000000000001, +286,,Drive to Transit - to CBD dummy,cbdDummy,1.5680000000000001, +287,,Walk to Transit - to San Francisco dummy,destCounty==1,2.2399999999999998, +288,,Drive to Transit - to San Francisco dummy,destCounty==1,2.2399999999999998, +289,,Walk to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.55999999999999994, +290,,Drive to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.67200000000000004, +291,,Walk to Transit - from San Francisco dummy,origCounty==1,0.224, +292,,Drive to Transit - from San Francisco dummy,origCounty==1,1.3440000000000001, +293,,Drive to Transit - distance penalty,,"min(0,c_drvtrn_distpen_0*(1-DIST/c_drvtrn_distpen_max))",od +294,,Walk not available for long distances,DISTWALK>3,1,od +295,,Bike not available for long distances,DISTBIKE>8,1,od diff --git a/utilities/make-mode-choice/update-workbased.csv b/utilities/make-mode-choice/update-workbased.csv new file mode 100644 index 000000000..0e2af9d91 --- /dev/null +++ b/utilities/make-mode-choice/update-workbased.csv @@ -0,0 +1,296 @@ +row_number,token,description,filter,formula,index +1,terminalTime,Terminal time (minutes),,TERMINAL,z +2,freeParkingAllowed,"Switch: if 1, travelers assumed to have subsidized parking to not pay the parking fee",,0, +3,freeParkingAvailable,"Free parking is available for this worker (results of free parking model, 1=Free, 2=Pay)",freeParkingAllowed,@freeParking, +4,hourlyParkingCost,Off-peak hourly parking cost,freeParkingAvailable==2,OPRKCST,z +5,destTopology,Destination zone topology,,@topology,z +6,destCounty,Destination County,,COUNTY,z +7,origCounty,Origin County,,@origCounty, +8,valueOfTime,Value of Time,,@valueOfTime, +9,autos,Household autos,,@autos, +10,workers,Household workers,,@workers, +11,hhSize,Household size (number of persons),,@hhSize, +12,hhIncomeQ1,Low Income Segment ($0-30k),,"if(@hhIncomeInDollars<30000,1,0)", +13,hhIncomeQ2,Med Income Segment ($30-60k),,"if(@hhIncomeInDollars>=30000,1,0)*if(@hhIncomeInDollars<60000,1,0)", +14,age,Person age,,@age, +15,timeOutbound,Time of day for outbound trip,,@timeOutbound, +16,timeInbound,Time of day for inbound trip,,@timeInbound, +17,tourDuration,"Tour duration, in hours",freeParkingAvailable==2,@tourDuration, +18,tourCategoryJoint,Joint tour,,@tourCategoryJoint, +19,numberOfParticipantsInJointTour,Number of participants in joint tour,tourCategoryJoint,@numberOfParticipantsInJointTour, +20,tourCategorySubtour,Work based subtour,,@tourCategorySubtour, +21,workTourModeIsSOV,Mode for work tour is SOV,tourCategorySubtour,@workTourModeIsSOV, +22,workTourModeIsBike,Mode for work tour is Bike,tourCategorySubtour,@workTourModeIsBike, +23,destZoneAreaType,Area type,,@areaType, +24,originDensityIndex,Origin zone density index,,@originDensityIndex, +25,densityIndex,Destination zone density index (hhdens*empdens)/(hhdens+empdens),,@densityIndex, +26,zonalShortWalkOrig,Short walk to transit at the origin indicator variable,,@zonalShortWalkAccessOrig, +27,zonalLongWalkOrig,Long walk to transit at the origin indicator variable,,@zonalLongWalkAccessOrig, +28,zonalShortWalkDest,Short walk to transit at the destination indicator variable,,@zonalShortWalkAccessDest, +29,zonalLongWalkDest,Long walk to transit at the destination indicator variable,,@zonalLongWalkAccessDest, +30,c_ivt,In-vehicle time coefficient,,-1.8800000000000001E-2, +31,c_ivt_lrt,In-vehicle time coefficient on light rail,,-1.6920000000000001E-2, +32,c_ivt_ferry,In-vehicle time coefficient on ferry,,-1.5040000000000001E-2, +33,c_ivt_exp,In-vehicle time coefficient on express bus,,-1.8800000000000001E-2, +34,c_ivt_hvy,In-vehicle time coefficient on heavy rail,,-1.5040000000000001E-2, +35,c_ivt_com,In-vehicle time coefficient on commuter rail,,-1.316E-2, +36,c_walkTimeShort,"Walk time coefficient -- see ""walkThresh""",,-3.7600000000000001E-2, +37,c_walkTimeLong,"Walk time coefficient -- see ""walkThresh""",,-0.188, +38,c_bikeTimeShort,"Bike time coefficient -- see ""bikeThresh""",,-7.5200000000000003E-2, +39,c_bikeTimeLong,"Bike time coefficient -- see ""bikeThresh""",,-0.376, +40,c_cost,"Cost coefficient, derived from Value of Time",,(0.6*c_ivt)/vot, +41,c_shortiWait,"Short initial wait time coefficient -- see ""waitThresh""",,-3.7600000000000001E-2, +42,c_longiWait,"Long initial wait time coefficient -- see ""waitThresh""",,-1.8800000000000001E-2, +43,c_wacc,Walk access time coefficient,,-3.7600000000000001E-2, +44,c_wegr,Walk egress time coefficient,,-3.7600000000000001E-2, +45,c_waux,Walk auxilliary time coefficient,,-3.7600000000000001E-2, +46,c_dtim,Drive access time coefficient,,-3.7600000000000001E-2, +47,c_xwait,Transfer wait time coefficient,,-3.7600000000000001E-2, +48,c_dacc_ratio,Ratio of drive access distance to OD distance,,0, +49,c_xfers_wlk,"Transfer penalty, walk",,30.00 * c_ivt, +50,c_xfers_drv,"Transfer penalty, drive-transit",,40.00 * c_ivt, +51,c_drvtrn_distpen_0,Drive-transit OD distance penalty at zero miles,,-5.0760000000000005, +52,c_drvtrn_distpen_max,Drive-transit OD distance penalty miles at phase-out,,15, +53,c_topology_walk,"Topology dummy coefficient, applied to walk",,-0.14100000000000001, +54,c_topology_bike,"Topology dummy coefficient, applied to bike",,-0.188, +55,c_topology_trn,"Topology dummy coefficient, applied to transit",,-3.7600000000000001E-2, +56,c_densityIndex,"Density index coefficient, applied to walk, bike, transit",,, +57,c_age1619_da,Age 16-19--Drive Alone,,-0.17199999999999999, +58,c_age010_trn,Age 0-10--Transit,,-3.8399999999999997E-2, +59,c_age16p_sr,Age 16+ -- Shared Ride,,0, +60,c_hhsize1_sr,Household Size 1--Shared Ride,,0, +61,c_hhsize2_sr,Household Size 2--Shared Ride,,0, +62,costPerMile,Auto operating cost per mile,,18.29, +63,costShareSr2,Divisor for cost sharing of SR2 trips,,1.75, +64,costShareSr3,Divisor for cost sharing of SR3+ trips,,2.5, +65,waitThresh,Wait time threshold to segment coefficients (minutes of directional wait),,10, +66,walkThresh,Walk threshold to segment coefficients (miles),,1.5, +67,shortWalk,Short walk threshold for availability markets (miles),,0.33333333333333298, +68,longWalk,Long walk threshold for availability markets (miles),,0.66666666666666596, +69,walkSpeed,Walk speed (miles per hour),,3, +70,bikeThresh,Bike threshold to segment coefficients (miles),,6, +71,bikeSpeed,Bike speed (miles per hour),,12, +72,maxCbdAreaTypeThresh,Area types less than this number are part of the CBD,,2, +73,indivTour,Individual tour,tourCategoryJoint==0,1, +74,upperEA,Upper limit on time of day for the Early morning time period,,5, +75,upperAM,Upper limit on time of day for the AM peak time period,,9, +76,upperMD,Upper limit on time of day for the Midday time period,,14, +77,upperPM,Upper limit on time of day for the PM peak time period,,18, +78,upperEV,Upper limit on time of day for the Evening time period,,21, +79,zeroAutoHh,Zero auto households,,"if(autos==0,1,0)", +80,autoDeficientHh,Auto deficient household (more workers than autos),,"(if(autos0,1,0))", +81,autoSufficientHh,Auto sufficient household (enough autos for each worker),,"if(autos>=workers,1,0)", +82,shortWalkMax,Maximum short walk time,,shortWalk*60/walkSpeed, +83,longWalkMax,Maximum long walk time,,longWalk*60/walkSpeed, +84,walkTransitOrig,Walk to transit available at the origin,,zonalShortWalkOrig+zonalLongWalkOrig, +85,walkTransitDest,Walk to transit available at the destination,,zonalShortWalkDest+zonalLongWalkDest, +86,walkTransitPossible,Walk to transit is possible,,"if((walkTransitOrig+walkTransitDest)==2,1,0)", +87,driveTransitPossible,Drive to transit is possible,,walkTransitDest*(1-zeroAutoHh), +88,originWalkTime,Walk time to/from transit if short-walk access origin,zonalShortWalkOrig,0.5*shortWalk*60/walkSpeed*2.0, +89,originWalkTime,Walk time to/from transit if long-walk access origin,zonalLongWalkOrig,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +90,destinationWalkTime,Walk time to/from transit if short-walk egress at destination,zonalShortWalkDest,0.5*shortWalk*60/walkSpeed*2.0, +91,destinationWalkTime,Walk time to/from transit if long-walk egress at destination,zonalLongWalkDest,(shortWalk+0.5*(longWalk-shortWalk))*60/walkSpeed*2.0, +92,cbdDummy,CBD dummy,,"if(destZoneAreaTypeupperEA)*(timeOutbound<=upperAM),2, +109,outPeriod,Outbound period index -- 3 if Midday outbound period,(timeOutbound>upperAM)*(timeOutbound<=upperMD),3, +110,outPeriod,Outbound period index -- 4 if PM Peak outbound period,(timeOutbound>upperMD)*(timeOutbound<=upperPM),4, +111,outPeriod,Outbound period index -- 5 if Evening Peak outbound period,(timeOutbound>upperPM)*(timeOutbound<=upperEV),5, +112,outPeriod,Outbound period index -- 6 if Night outbound period,(timeOutbound>upperEV),6, +113,inPeriod,Inbound period index -- 1 if Early morning inbound period,,"if(timeInbound<=upperEA,1,0)", +114,inPeriod,Inbound period index -- 2 if AM Peak inbound period,inPeriod==0,"if(timeInbound>upperEA,1,0)*if(timeInbound<=upperAM,2,0)", +115,inPeriod,Inbound period index -- 3 if Midday inbound period,inPeriod==0,"if(timeInbound>upperAM,1,0)*if(timeInbound<=upperMD,3,0)", +116,inPeriod,Inbound period index -- 4 if PM Peak inbound period,inPeriod==0,"if(timeInbound>upperMD,1,0)*if(timeInbound<=upperPM,4,0)", +117,inPeriod,Inbound period index -- 5 if Evening inbound period,inPeriod==0,"if(timeInbound>upperPM,1,0)*if(timeInbound<=upperEV,4,0)", +118,inPeriod,Inbound period index -- 6 if Night inbound period,inPeriod==0,"if(timeInbound>upperNT,6,0)", +119,sovOut,SOV outbound mode is available,,"if(SOV_TIME[outPeriod]>0,1,0)",od +120,sovIn,SOV inbound mode is available,,"if(SOV_TIME[inPeriod]>0,1,0)",do +121,sovAvailable,SOV mode is available,sovOut,sovIn, +122,hov2Out,HOV 2 outbound mode is available,,"if(HOV2_TIME[outPeriod]>0,1,0)",od +123,hov2In,HOV 2 inbound mode is available,,"if(HOV2_TIME[inPeriod]>0,1,0)",do +124,hov2Available,HOV 2 mode is available,hov2Out,hov2In, +125,hov3Out,HOV 3+ outbound mode is available,,"if(HOV3_TIME[outPeriod]>0,1,0)",od +126,hov3In,HOV 3+ inbound mode is available,,"if(HOV3_TIME[inPeriod]>0,1,0)",do +127,hov3Available,HOV 3+ mode is available,hov3Out,hov3In, +128,walkTransitAvailable,Walk transit mode is available for the tour,walkTransitPossible,(WLK_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_WLK_TOTIVT[inPeriod]/100>0),"od,do,od,do" +129,pnrTransitAvailable,Park and ride transit mode is available for the tour,driveTransitPossible,(PNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_PNR_TOTIVT[inPeriod]/100>0),"od,do" +130,knrTransitAvailable,Kiss and ride transit mode is available for the tour,driveTransitPossible,(KNR_TRN_WLK_TOTIVT[outPeriod]/100>0)*(WLK_TRN_KNR_TOTIVT[inPeriod]/100>0),"od,do,od,do" +131,,Drive alone - Unavailable,,sovAvailable==0, +132,,Drive alone - Unavailable for zero auto households,sovAvailable*(autos==0),1, +133,,Drive alone - Unavailable for persons less than 16,sovAvailable*(age<16)*(useAV==0),1, +134,,Drive alone - Unavailable for joint tours,tourCategoryJoint==1,1, +135,,Drive alone - Unavailable if didn't drive to work,tourCategorySubtour==1,workTourModeIsSOV==0, +136,,Drive alone - In-vehicle time,sovAvailable,c_ivt*(SOV_TIME[outPeriod]+SOV_TIME[inPeriod])*autoIVTFactor,"od,do" +137,,Drive alone - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +138,,Drive alone - Operating cost,sovAvailable,c_cost*(costPerMile*(SOV_DIST[outPeriod]+SOV_DIST[inPeriod]))*autoCPMFactor,"od,do" +139,,Drive alone - Parking cost,sovAvailable,c_cost*dailyParkingCost*autoParkingCostFactor, +140,,Drive alone - Bridge toll,sovAvailable,c_cost*(SOV_BTOLL[outPeriod]+SOV_BTOLL[inPeriod]),"od,do" +141,,Drive alone - Value toll,sovAvailable,"c_cost*(SOV_VTOLL[outPeriod]+SOV_VTOLL[inPeriod])*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +142,,Drive alone - Person is between 16 and 19 years old,sovAvailable*(age>=16 * age<=19),c_age1619_da, +143,,Shared ride 2 - Unavailable,,hov2Available==0, +144,,Shared ride 2 - Unavailable based on party size,tourCategoryJoint==1,numberOfParticipantsInJointTour>2, +145,,Shared ride 2 - In-vehicle time,hov2Available,c_ivt*(HOV2_TIME[outPeriod]+HOV2_TIME[inPeriod])*autoIVTFactor,"od,do" +146,,Shared ride 2 - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +147,,Shared ride 2 - Operating cost,hov2Available,c_cost*(costPerMile*(HOV2_DIST[outPeriod]+HOV2_DIST[inPeriod]))*autoCPMFactor,"od,do" +148,,Shared ride 2 - Parking cost,hov2Available,c_cost*dailyParkingCost/costShareSr2*autoParkingCostFactor, +149,,Shared ride 2 - Bridge toll,hov2Available,c_cost*(HOV2_BTOLL[outPeriod]+HOV2_BTOLL[inPeriod])/costShareSr2,"od,do" +150,,Shared ride 2 - Value toll,hov2Available,"c_cost*(HOV2_VTOLL[outPeriod]+HOV2_VTOLL[inPeriod])/costShareSr2*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +151,,Shared ride 2 - One person household,hov2Available*(hhSize==1),c_hhsize1_sr, +152,,Shared ride 2 - Two person household,hov2Available*(hhSize==2),c_hhsize2_sr, +153,,Shared ride 2 - Person is 16 years old or older,hov2Available*(age>=16),c_age16p_sr, +154,,Shared ride 3+ - Unavailable,,hov3Available==0, +155,,Shared ride 3+ - In-vehicle time,hov3Available,c_ivt*(HOV3_TIME[outPeriod]+HOV3_TIME[inPeriod])*autoIVTFactor,"od,do" +156,,Shared ride 3+ - Terminal time,,c_walkTimeShort*(2*terminalTime)*autoTermTimeFactor, +157,,Shared ride 3+ - Operating cost,hov3Available,c_cost*(costPerMile*(HOV3_DIST[outPeriod]+HOV3_DIST[inPeriod]))*autoCPMFactor,"od,do" +158,,Shared ride 3+ - Parking cost,hov3Available,c_cost*dailyParkingCost/costShareSr3*autoParkingCostFactor, +159,,Shared ride 3+ - Bridge toll,hov3Available,c_cost*(HOV3_BTOLL[outPeriod]+HOV3_BTOLL[inPeriod])/costShareSr3,"od,do" +160,,Shared ride 3+ - Value toll,hov3Available,"c_cost*(HOV3_VTOLL[outPeriod]+HOV3_VTOLL[inPeriod])/costShareSr3*if(hhIncomeQ1=1, %Means_Based_Tolling_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Tolling_Q2Factor%, 1)","od,do" +161,,Shared ride 3+ - One person household,hov3Available*(hhSize==1),c_hhsize1_sr, +162,,Shared ride 3+ - Two person household,hov3Available*(hhSize==2),c_hhsize2_sr, +163,,Shared ride 3+ - Person is 16 years old or older,hov3Available*(age>=16),c_age16p_sr, +164,,Walk - Time up to 2 miles,,"c_walkTimeShort*min((DISTWALK+DISTWALK)*60/walkSpeed, walkThresh*2*60/walkSpeed)","od,do" +165,,Walk - Time beyond 2 of a miles,,"c_walkTimeLong*max((DISTWALK+DISTWALK)*60/walkSpeed - walkThresh*2*60/walkSpeed, 0)","od,do" +166,,Walk - Destination zone densityIndex,,c_densityIndex*densityIndex, +167,,Walk - Topology,,c_topology_walk*destTopology, +168,,Bike - Unavailable if didn't bike to work,(tourCategorySubtour==1)*(workTourModeIsBike==0),1, +169,,Bike - Time up to 2 miles,,"c_bikeTimeShort*min((DISTBIKE+DISTBIKE)*60/bikeSpeed, bikeThresh*2*60/bikeSpeed)","od,do" +170,,Bike - Time beyond 2 of a miles,,"c_bikeTimeLong*max((DISTBIKE+DISTBIKE)*60/bikeSpeed - bikeThresh*2*60/bikeSpeed, 0)","od,do" +171,,Bike - Destination zone densityIndex,,c_densityIndex*densityIndex, +172,,Bike - Topology,,c_topology_bike*destTopology, +173,,Walk to Transit - Unavailable,,walkTransitAvailable==0, +174,,Walk to Transit - In-vehicle time on local bus,walkTransitAvailable,c_ivt*(WLK_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_WLK_IVT_LOC[inPeriod]/100),"od,do" +175,,Walk to Transit - In-vehicle time on express bus,walkTransitAvailable,c_ivt_exp*(WLK_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_WLK_IVT_EXP[inPeriod]/100),"od,do" +176,,Walk to Transit - In-vehicle time on light rail,walkTransitAvailable,c_ivt_lrt*(WLK_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_WLK_IVT_LRT[inPeriod]/100),"od,do" +177,,Walk to Transit - In-vehicle time on ferry,walkTransitAvailable,c_ivt_ferry*(WLK_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_WLK_IVT_FRY[inPeriod]/100),"od,do" +178,,Walk to Transit - In-vehicle time on heavy rail,walkTransitAvailable,c_ivt_hvy*(WLK_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_WLK_IVT_HVY[inPeriod]/100),"od,do" +179,,Walk to Transit - In-vehicle time on commuter rail,walkTransitAvailable,c_ivt_com*(WLK_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_WLK_IVT_COM[inPeriod]/100),"od,do" +180,,Walk to Transit - Short iwait time,walkTransitAvailable,"c_shortiwait*(min(WLK_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_WLK_IWAIT[inPeriod]/100,waitThresh))","od,do" +181,,Walk to Transit - Long iwait time,walkTransitAvailable,"c_longiwait*(max(WLK_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_WLK_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +182,,Walk to Transit - transfer wait time,walkTransitAvailable,c_xwait*(WLK_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_WLK_XWAIT[inPeriod]/100),"od,do" +183,,Walk to Transit - number of transfers,walkTransitAvailable,"c_xfers_wlk*(max(WLK_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_WLK_BOARDS[inPeriod]-1,0))","od,do" +184,,Walk to Transit - Walk access time,walkTransitAvailable,c_wacc*(originWalkTime+originWalkTime), +185,,Walk to Transit - Walk egress time,walkTransitAvailable,c_wegr*(destinationWalkTime+destinationWalkTime), +186,,Walk to Transit - Walk other time,walkCommuterAvailable,c_waux*(WLK_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_WLK_WAUX[inPeriod]/100),"od,do" +187,,Walk to Transit - Fare,walkCommuterAvailable,"c_cost*(WLK_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_WLK_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))","od,do" +188,,Walk to Transit - Destination zone densityIndex,walkCommuterAvailable,c_densityIndex*densityIndex, +189,,Walk to Transit - Topology,walkCommuterAvailable,c_topology_trn*destTopology, +190,,Walk to Transit - Person is less than 10 years old,age<=10,c_age010_trn, +191,,Park and ride Transit - Unavailable,,pnrTransitAvailable==0, +192,,Park and ride Transit - Unavailable for zero auto households,autos==0,1, +193,,Park and ride Transit - Unavailable for persons less than 16,age<16,1, +194,,Park and ride Transit - In-vehicle time on local bus,pnrTransitAvailable,c_ivt*(PNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_PNR_IVT_LOC[inPeriod]/100),"od,do" +195,,Park and ride Transit - In-vehicle time on express bus,pnrTransitAvailable,c_ivt_exp*(PNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_PNR_IVT_EXP[inPeriod]/100),"od,do" +196,,Park and ride Transit - In-vehicle time on light rail,pnrTransitAvailable,c_ivt_lrt*(PNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_PNR_IVT_LRT[inPeriod]/100),"od,do" +197,,Park and ride Transit - In-vehicle time on ferry,pnrTransitAvailable,c_ivt_ferry*(PNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_PNR_IVT_FRY[inPeriod]/100),"od,do" +198,,Park and ride Transit - In-vehicle time on heavy rail,pnrTransitAvailable,c_ivt_hvy*(PNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_PNR_IVT_HVY[inPeriod]/100),"od,do" +199,,Park and ride Transit - In-vehicle time on commuter rail,pnrTransitAvailable,c_ivt_com*(PNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_PNR_IVT_COM[inPeriod]/100),"od,do" +200,,Park and ride Transit - Short iwait time,pnrTransitAvailable,"c_shortiwait*(min(PNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_PNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +201,,Park and ride Transit - Long iwait time,pnrTransitAvailable,"c_longiwait*(max(PNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_PNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +202,,Park and ride Transit - transfer wait time,pnrTransitAvailable,c_xwait*(PNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_PNR_XWAIT[inPeriod]/100),"od,do" +203,,Park and ride Transit - number of transfers,pnrTransitAvailable,"c_xfers_drv*(max(PNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_PNR_BOARDS[inPeriod]-1,0))","od,do" +204,,Park and ride Transit - Drive time,pnrTransitAvailable,c_dtim*(PNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_PNR_DTIM[inPeriod]/100),"od,do" +205,,Park and ride Transit - Walk access time (at attraction end),pnrTransitAvailable,c_wacc*(destinationWalkTime), +206,,Park and ride Transit - Walk egress time (at attraction end),pnrTransitAvailable,c_wegr*(destinationWalkTime), +207,,Park and ride Transit - Walk other time,pnrTransitAvailable,c_waux*(PNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_PNR_WAUX[inPeriod]/100),"od,do" +208,,Park and ride Transit - Fare and operating cost,pnrTransitAvailable,"c_cost*((PNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_PNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +209,,Park and ride Transit - Ratio of drive access distance to OD distance,pnrTransitAvailable,c_dacc_ratio*((PNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_PNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +210,,Park and ride Transit - Destination zone densityIndex,pnrTransitAvailable,c_densityIndex*densityIndex, +211,,Park and ride Transit - Topology,pnrTransitAvailable,c_topology_trn*destTopology, +212,,Park and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +213,,Kiss and ride Transit - Unavailable,,knrTransitAvailable==0, +214,,Kiss and ride Transit - Unavailable for zero auto households,autos==0,1, +215,,Kiss and ride Transit - Unavailable for persons less than 16,age<16,1, +216,,Kiss and ride Transit - In-vehicle time on local bus,knrTransitAvailable,c_ivt*(KNR_TRN_WLK_IVT_LOC[outPeriod]/100+WLK_TRN_KNR_IVT_LOC[inPeriod]/100),"od,do" +217,,Kiss and ride Transit - In-vehicle time on express bus,knrTransitAvailable,c_ivt_exp*(KNR_TRN_WLK_IVT_EXP[outPeriod]/100+WLK_TRN_KNR_IVT_EXP[inPeriod]/100),"od,do" +218,,Kiss and ride Transit - In-vehicle time on light rail,knrTransitAvailable,c_ivt_lrt*(KNR_TRN_WLK_IVT_LRT[outPeriod]/100+WLK_TRN_KNR_IVT_LRT[inPeriod]/100),"od,do" +219,,Kiss and ride Transit - In-vehicle time on ferry,knrTransitAvailable,c_ivt_ferry*(KNR_TRN_WLK_IVT_FRY[outPeriod]/100+WLK_TRN_KNR_IVT_FRY[inPeriod]/100),"od,do" +220,,Kiss and ride Transit - In-vehicle time on heavy rail,knrTransitAvailable,c_ivt_hvy*(KNR_TRN_WLK_IVT_HVY[outPeriod]/100+WLK_TRN_KNR_IVT_HVY[inPeriod]/100),"od,do" +221,,Kiss and ride Transit - In-vehicle time on commuter rail,knrTransitAvailable,c_ivt_com*(KNR_TRN_WLK_IVT_COM[outPeriod]/100+WLK_TRN_KNR_IVT_COM[inPeriod]/100),"od,do" +222,,Kiss and ride Transit - Short iwait time,knrTransitAvailable,"c_shortiwait*(min(KNR_TRN_WLK_IWAIT[outPeriod]/100,waitThresh)+min(WLK_TRN_KNR_IWAIT[inPeriod]/100,waitThresh))","od,do" +223,,Kiss and ride Transit - Long iwait time,knrTransitAvailable,"c_longiwait*(max(KNR_TRN_WLK_IWAIT[outPeriod]/100-waitThresh,0)+max(WLK_TRN_KNR_IWAIT[inPeriod]/100-waitThresh,0))","od,do" +224,,Kiss and ride Transit - transfer wait time,knrTransitAvailable,c_xwait*(KNR_TRN_WLK_XWAIT[outPeriod]/100+WLK_TRN_KNR_XWAIT[inPeriod]/100),"od,do" +225,,Kiss and ride Transit - number of transfers,knrTransitAvailable,"c_xfers_drv*(max(KNR_TRN_WLK_BOARDS[outPeriod]-1,0)+max(WLK_TRN_KNR_BOARDS[inPeriod]-1,0))","od,do" +226,,Kiss and ride Transit - Drive time,knrTransitAvailable,c_dtim*(KNR_TRN_WLK_DTIM[outPeriod]/100+WLK_TRN_KNR_DTIM[inPeriod]/100),"od,do" +227,,Kiss and ride Transit - Walk access time (at attraction end),knrTransitAvailable,c_wacc*(destinationWalkTime), +228,,Kiss and ride Transit - Walk egress time (at attraction end),knrTransitAvailable,c_wegr*(destinationWalkTime), +229,,Kiss and ride Transit - Walk other time,knrTransitAvailable,c_waux*(KNR_TRN_WLK_WAUX[outPeriod]/100+WLK_TRN_KNR_WAUX[inPeriod]/100),"od,do" +230,,Kiss and ride Transit - Fare and operating cost,knrTransitAvailable,"c_cost*((KNR_TRN_WLK_FAR[outPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1)+WLK_TRN_KNR_FAR[inPeriod]*if(hhIncomeQ1=1, %Means_Based_Fare_Q1Factor%, 1)*if(hhIncomeQ2=1, %Means_Based_Fare_Q2Factor%, 1))+(KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)*costPerMile)","od,do,od,do" +231,,Kiss and ride Transit - Ratio of drive access distance to OD distance,knrTransitAvailable,c_dacc_ratio*((KNR_TRN_WLK_DDIST[outPeriod]/100+WLK_TRN_KNR_DDIST[inPeriod]/100)/(DIST+DIST)),"od,do,od,do" +232,,Kiss and ride Transit - Destination zone densityIndex,knrTransitAvailable,c_densityIndex*densityIndex, +233,,Kiss and ride Transit - Topology,knrTransitAvailable,c_topology_trn*destTopology, +234,,Kiss and ride Transit - Person is less than 10 years old,age<=10,c_age010_trn, +235,,Ride hail - In-vehicle time,,c_ivt*(HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]),"od,do" +236,,Ride hail - Wait time,,c_ivt*1.5*totalWaitTaxi, +237,,Ride hail - Tolls,,c_cost*(HOV2TOLL_VTOLL[outPeriod] + HOV2TOLL_VTOLL[inPeriod]),"od,do" +238,,Ride hail - Bridge toll,,c_cost*(HOV2TOLL_BTOLL[outPeriod] + HOV2TOLL_BTOLL[inPeriod]),"od,do" +239,,Ride hail - Fare,,c_cost*(costInitialTaxi*2 + (HOV2TOLL_DIST[outPeriod]+HOV2TOLL_DIST[inPeriod]) * costPerMileTaxi + (HOV2TOLL_TIME[outPeriod]+HOV2TOLL_TIME[inPeriod]) * costPerMinuteTaxi )*100,"od,do,od,do" +240,,Walk - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,1.57732586568781, +241,,Walk - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,2.5500710615922202, +242,,Walk - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,1.9431761346474099, +243,,Bike - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.7366540882323499E-2, +244,,Bike - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,6.2182802486794198E-2, +245,,Bike - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.48392933656572, +246,,Shared ride 2 - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.43199457274731, +247,,Shared ride 2 - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.88700714334679698, +248,,Shared ride 2 - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.70599617144003801, +249,,Shared ride 3+ - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,-1.79586316675695, +250,,Shared ride 3+ - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,1.0642861726414901, +251,,Shared ride 3+ - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,0.55909458214101604, +252,,Walk to Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,3.6358887906785, +253,,Walk to Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.15690495264132001, +254,,Walk to Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-1.6595498119666301, +255,,Park and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +256,,Park and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437499, +257,,Park and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656499, +258,,Kiss and ride Transit - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0, +259,,Kiss and ride Transit - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,0.53304116577437499, +260,,Kiss and ride Transit - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.5162425804656499, +261,,Taxi - Alternative-specific constant - Zero auto,indivTour*zeroAutoHh,0.37747431280016502, +262,,Taxi - Alternative-specific constant - Auto deficient,indivTour*autoDeficientHh,-0.203434063777161, +263,,Taxi - Alternative-specific constant - Auto sufficient,indivTour*autoSufficientHh,-2.27974912056504, +264,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-2.3505204046613102, +265,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6817039430815797, +266,,Walk - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.7874728886686002, +267,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.4556271225409203, +268,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-8.0967498335842301, +269,,Bike - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.5927750116185697, +270,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.12790643435973, +271,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,1.7942435719105501, +272,,Shared ride 2 - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,0.36718430827121301, +273,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,1.3763601573028801, +274,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-2.4868225477082002, +275,,Shared ride 3+ - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-2.3150366951619401, +276,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,-1.52520894642338, +277,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-6.2606050432642402, +278,,Walk to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.4530509448000402, +279,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*zeroAutoHh,0, +280,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoDeficientHh,-5.6369494640971096, +281,,Drive to Transit - Alternative-specific constant - Joint Tours,tourCategoryJoint*autoSufficientHh,-7.0277331325007601, +282,,Taxi - Alternative-specific constant - Zero auto - Joint Tours,tourCategoryJoint*zeroAutoHh,-4.5792091796996699, +283,,Taxi - Alternative-specific constant - Auto deficient - Joint Tours,tourCategoryJoint*autoDeficientHh,-9.8157175798197507, +284,,Taxi - Alternative-specific constant - Auto sufficient - Joint Tours,tourCategoryJoint*autoSufficientHh,-11.709876913156799, +285,,Walk to Transit - to CBD dummy,cbdDummy,0.28200000000000003, +286,,Drive to Transit - to CBD dummy,cbdDummy,0, +287,,Walk to Transit - to San Francisco dummy,destCounty==1,1.4100000000000001, +288,,Drive to Transit - to San Francisco dummy,destCounty==1,0, +289,,Walk to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35, +290,,Drive to Transit - Within SF dummy,(origCounty==1)*(destCounty==1),0.35, +291,,Walk to Transit - from San Francisco dummy,origCounty==1,8.7499999999999994E-2, +292,,Drive to Transit - from San Francisco dummy,origCounty==1,0, +293,,Drive to Transit - distance penalty,,"min(0,c_drvtrn_distpen_0*(1-DIST/c_drvtrn_distpen_max))",od +294,,Walk not available for long distances,DISTWALK>3,1,od +295,,Bike not available for long distances,DISTBIKE>8,1,od