Skip to content

Commit

Permalink
Use TNC_transit access times to calculate mt/nev access times
Browse files Browse the repository at this point in the history
  • Loading branch information
aber-sandag committed Nov 1, 2024
1 parent 90188e7 commit b9918fa
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 39 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -180,9 +180,12 @@ Determining Tour Destination,destination,df.destination if 'destination' in df.c
,origin_local_dist,"reindex(land_use.walk_dist_local_bus, origin)",
,origin_prm_dist,"reindex(land_use.walk_dist_premium_transit, origin)",
,origin_mix_dist,"np.minimum(origin_local_dist, origin_prm_dist)",
,origin_micro_local_dist,"reindex(land_use.micro_dist_local_bus, origin)",
,origin_micro_prm_dist,"reindex(land_use.micro_dist_premium_transit, origin)",
,origin_micro_mix_dist,"np.minimum(origin_micro_local_dist, origin_micro_prm_dist)",
,origin_micro_local_dist_tncout,"odt_skims['KNROUT_LOC_ACC']/60 * driveSpeed",
,origin_micro_local_dist_tncin,"odt_skims['KNRIN_LOC_ACC']/60 * driveSpeed",
,origin_micro_prm_dist_tncout,"odt_skims['KNROUT_PRM_ACC']/60 * driveSpeed",
,origin_micro_prm_dist_tncin,"odt_skims['KNRIN_PRM_ACC']/60 * driveSpeed",
,origin_micro_mix_dist_tncout,"odt_skims['KNROUT_MIX_ACC']/60 * driveSpeed",
,origin_micro_mix_dist_tncin,"odt_skims['KNRIN_MIX_ACC']/60 * driveSpeed",
,dest_local_dist,"reindex(land_use.walk_dist_local_bus, destination)",
,dest_prm_dist,"reindex(land_use.walk_dist_premium_transit, destination)",
,dest_mix_dist,"np.minimum(dest_local_dist, dest_prm_dist)",
Expand Down Expand Up @@ -284,25 +287,25 @@ nev available,nev_available,(nev_orig > 0) & (nev_orig == nev_dest) & (s3_dist_s
nev direct time,nev_direct_time,"np.maximum(s3_dist_skims_out/nevSpeed*60, s3_time_skims_out) + np.maximum(s3_dist_skims_inb/nevSpeed*60, s3_time_skims_inb)",
nev total time,nev_time,"np.maximum(nev_direct_time + nevDiversionConstant, nevDiversionFactor*nev_direct_time)",
# Microtransit and NEV access to transit,,,
microtransit access to local available,microtransit_local_access_available,(microtransit_orig>0) & (origin_micro_local_dist<microtransitMaxDist) & microtransit_operating,
microtransit direct access to local time,microtransit_local_direct_access_time,"(origin_micro_local_dist/microtransitSpeed*60) + (origin_micro_local_dist/microtransitSpeed*60)",
microtransit access to local available,microtransit_local_access_available,(microtransit_orig>0) & (origin_micro_local_dist_tncout<microtransitMaxDist) & (origin_micro_local_dist_tncin<microtransitMaxDist) & microtransit_operating,
microtransit direct access to local time,microtransit_local_direct_access_time,"(origin_micro_local_dist_tncout/microtransitSpeed*60) + (origin_micro_local_dist_tncin/microtransitSpeed*60)",
microtransit access to local time,microtransit_local_access_time,"np.maximum(microtransit_local_direct_access_time + microtransitDiversionConstant, microtransitDiversionFactor*microtransit_local_direct_access_time)",
nev access to local available,nev_local_access_available,(nev_orig>0) & (origin_micro_local_dist<nevMaxDist) & nev_operating,
nev direct access to local time,nev_local_direct_access_time,"(origin_micro_local_dist/nevSpeed*60) + (origin_micro_local_dist/nevSpeed*60)",
nev access to local available,nev_local_access_available,(nev_orig>0) & (origin_micro_local_dist_tncout<nevMaxDist) & (origin_micro_local_dist_tncin<nevMaxDist) & nev_operating,
nev direct access to local time,nev_local_direct_access_time,"(origin_micro_local_dist_tncout/nevSpeed*60) + (origin_micro_local_dist_tncin/nevSpeed*60)",
nev access to local time,nev_local_access_time,"np.maximum(nev_local_direct_access_time + nevDiversionConstant, nevDiversionFactor*nev_local_direct_access_time)",
#,,,
microtransit access to premium available,microtransit_prm_access_available,(microtransit_orig>0) & (origin_micro_prm_dist<microtransitMaxDist) & microtransit_operating,
microtransit direct access to premium time,microtransit_prm_direct_access_time,"(origin_micro_prm_dist/microtransitSpeed*60) + (origin_micro_prm_dist/microtransitSpeed*60)",
microtransit access to premium available,microtransit_prm_access_available,(microtransit_orig>0) & (origin_micro_prm_dist_tncout<microtransitMaxDist) & (origin_micro_prm_dist_tncin<microtransitMaxDist) & microtransit_operating,
microtransit direct access to premium time,microtransit_prm_direct_access_time,"(origin_micro_prm_dist_tncout/microtransitSpeed*60) + (origin_micro_prm_dist_tncin/microtransitSpeed*60)",
microtransit access to premium time,microtransit_prm_access_time,"np.maximum(microtransit_prm_direct_access_time + microtransitDiversionConstant, microtransitDiversionFactor*microtransit_prm_direct_access_time)",
nev access to premium available,nev_prm_access_available,(nev_orig>0) & (origin_micro_prm_dist<nevMaxDist) & nev_operating,
nev direct access to premium time,nev_prm_direct_access_time,"(origin_micro_prm_dist/nevSpeed*60) + (origin_micro_prm_dist/nevSpeed*60)",
nev access to premium available,nev_prm_access_available,(nev_orig>0) & (origin_micro_prm_dist_tncout<nevMaxDist) & (origin_micro_prm_dist_tncin<nevMaxDist) & nev_operating,
nev direct access to premium time,nev_prm_direct_access_time,"(origin_micro_prm_dist_tncout/nevSpeed*60) + (origin_micro_prm_dist_tncin/nevSpeed*60)",
nev access to premium time,nev_prm_access_time,"np.maximum(nev_prm_direct_access_time + nevDiversionConstant, nevDiversionFactor*nev_prm_direct_access_time)",
#,,,
microtransit access to mixed available,microtransit_mix_access_available,(microtransit_orig>0) & (origin_micro_mix_dist<microtransitMaxDist) & microtransit_operating,
microtransit direct access to mixed time,microtransit_mix_direct_access_time,"(origin_micro_mix_dist/microtransitSpeed*60) + (origin_micro_mix_dist/microtransitSpeed*60)",
microtransit access to mixed available,microtransit_mix_access_available,(microtransit_orig>0) & (origin_micro_mix_dist_tncout<microtransitMaxDist) & (origin_micro_mix_dist_tncin<microtransitMaxDist) & microtransit_operating,
microtransit direct access to mixed time,microtransit_mix_direct_access_time,"(origin_micro_mix_dist_tncout/microtransitSpeed*60) + (origin_micro_mix_dist_tncin/microtransitSpeed*60)",
microtransit access to mixed time,microtransit_mix_access_time,"np.maximum(microtransit_mix_direct_access_time + microtransitDiversionConstant, microtransitDiversionFactor*microtransit_mix_direct_access_time)",
nev access to mixed available,nev_mix_access_available,(nev_orig>0) & (origin_micro_mix_dist<nevMaxDist) & nev_operating,
nev direct access to mixed time,nev_mix_direct_access_time,"(origin_micro_mix_dist/nevSpeed*60) + (origin_micro_mix_dist/nevSpeed*60)",
nev access to mixed available,nev_mix_access_available,(nev_orig>0) & (origin_micro_mix_dist_tncout<nevMaxDist) & (origin_micro_mix_dist_tncin<nevMaxDist) & nev_operating,
nev direct access to mixed time,nev_mix_direct_access_time,"(origin_micro_mix_dist_tncout/nevSpeed*60) + (origin_micro_mix_dist_tncin/nevSpeed*60)",
nev access to mixed time,nev_mix_access_time,"np.maximum(nev_mix_direct_access_time + nevDiversionConstant, nevDiversionFactor*nev_mix_direct_access_time)",
# Microtransit and NEV egress from transit,,,
microtransit egress from local available,microtransit_local_egress_available,(microtransit_dest>0) & (dest_micro_local_dist>maxWalkIfMTAccessAvailable) & (dest_micro_local_dist<microtransitMaxDist) & microtransit_operating,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -228,6 +228,12 @@ no long walks,walkAvailable,"np.where((walk_time_skims < max_walk_time),1,0) * n
,dest_micro_local_dist,"reindex(land_use.micro_dist_local_bus, destination)"
,dest_micro_prm_dist,"reindex(land_use.micro_dist_premium_transit, destination)"
,dest_micro_mix_dist,"np.minimum(dest_micro_local_dist, dest_micro_prm_dist)"
,micro_local_dist_tncout,"odt_skims['KNROUT_LOC_ACC']/60 * driveSpeed",
,micro_local_dist_tncin,"odt_skims['KNRIN_LOC_ACC']/60 * driveSpeed",
,micro_prm_dist_tncout,"odt_skims['KNROUT_PRM_ACC']/60 * driveSpeed",
,micro_prm_dist_tncin,"odt_skims['KNRIN_PRM_ACC']/60 * driveSpeed",
,micro_mix_dist_tncout,"odt_skims['KNROUT_MIX_ACC']/60 * driveSpeed",
,micro_mix_dist_tncin,"odt_skims['KNRIN_MIX_ACC']/60 * driveSpeed",
#access egress times,,
,origin_local_time,origin_local_dist * 60/walkSpeed
,origin_prm_time,origin_prm_dist * 60/walkSpeed
Expand Down Expand Up @@ -303,43 +309,43 @@ nev available,nev_available,(nev_orig > 0) & (nev_orig == nev_dest) & (s3_dist_s
nev direct time,nev_direct_time,"np.maximum(s3_dist_skims/nevSpeed*60, s3_time_skims)"
nev total time,nev_time,"np.maximum(nev_direct_time + nevDiversionConstant, nevDiversionFactor*nev_direct_time)"
# Microtransit and NEV access to transit,,
outbound microtransit access to local available,microtransit_local_access_available_out,df.outbound & (microtransit_orig>0) & (origin_micro_local_dist<microtransitMaxDist) & microtransit_operating
outbound microtransit direct access to local time,microtransit_local_direct_access_time_out,"origin_micro_local_dist/microtransitSpeed*60"
outbound microtransit access to local available,microtransit_local_access_available_out,df.outbound & (microtransit_orig>0) & (micro_local_dist_tncout<microtransitMaxDist) & microtransit_operating
outbound microtransit direct access to local time,microtransit_local_direct_access_time_out,"micro_local_dist_tncout/microtransitSpeed*60"
outbound microtransit access to local time,microtransit_local_access_time_out,"np.maximum(microtransit_local_direct_access_time_out + microtransitDiversionConstant, microtransitDiversionFactor*microtransit_local_direct_access_time_out)"
inbound microtransit egress from local available,microtransit_local_egress_available_in,~df.outbound & (microtransit_dest>0) & (dest_micro_local_dist<microtransitMaxDist) & microtransit_operating
inbound microtransit direct egress from local time,microtransit_local_direct_egress_time_in,"dest_micro_local_dist/microtransitSpeed*60"
inbound microtransit egress from local available,microtransit_local_egress_available_in,~df.outbound & (microtransit_dest>0) & (micro_local_dist_tncin<microtransitMaxDist) & microtransit_operating
inbound microtransit direct egress from local time,microtransit_local_direct_egress_time_in,"micro_local_dist_tncin/microtransitSpeed*60"
inbound microtransit egress from local time,microtransit_local_egress_time_in,"np.maximum(microtransit_local_direct_egress_time_in + microtransitDiversionConstant, microtransitDiversionFactor*microtransit_local_direct_egress_time_in)"
outbound nev access to local available,nev_local_access_available_out,df.outbound & (nev_orig>0) & (origin_micro_local_dist<nevMaxDist) & nev_operating
outbound nev direct access to local time,nev_local_direct_access_time_out,"origin_micro_local_dist/nevSpeed*60"
outbound nev access to local available,nev_local_access_available_out,df.outbound & (nev_orig>0) & (micro_local_dist_tncout<nevMaxDist) & nev_operating
outbound nev direct access to local time,nev_local_direct_access_time_out,"micro_local_dist_tncout/nevSpeed*60"
outbound nev access to local time,nev_local_access_time_out,"np.maximum(nev_local_direct_access_time_out + nevDiversionConstant, nevDiversionFactor*nev_local_direct_access_time_out)"
inbound nev egress from local available,nev_local_egress_available_in,~df.outbound & (nev_dest>0) & (dest_micro_local_dist<nevMaxDist) & nev_operating
inbound nev direct egress from local time,nev_local_direct_egress_time_in,"dest_micro_local_dist/nevSpeed*60"
inbound nev egress from local available,nev_local_egress_available_in,~df.outbound & (nev_dest>0) & (micro_local_dist_tncin<nevMaxDist) & nev_operating
inbound nev direct egress from local time,nev_local_direct_egress_time_in,"micro_local_dist_tncin/nevSpeed*60"
inbound nev egress from local time,nev_local_egress_time_in,"np.maximum(nev_local_direct_egress_time_in + nevDiversionConstant, nevDiversionFactor*nev_local_direct_egress_time_in)"
#,,
outbound microtransit access to premium available,microtransit_prm_access_available_out,df.outbound & (microtransit_orig>0) & (origin_micro_prm_dist<microtransitMaxDist) & microtransit_operating
outbound microtransit direct access to premium time,microtransit_prm_direct_access_time_out,"origin_micro_prm_dist/microtransitSpeed*60"
outbound microtransit access to premium available,microtransit_prm_access_available_out,df.outbound & (microtransit_orig>0) & (micro_prm_dist_tncout<microtransitMaxDist) & microtransit_operating
outbound microtransit direct access to premium time,microtransit_prm_direct_access_time_out,"micro_prm_dist_tncout/microtransitSpeed*60"
outbound microtransit access to premium time,microtransit_prm_access_time_out,"np.maximum(microtransit_prm_direct_access_time_out + microtransitDiversionConstant, microtransitDiversionFactor*microtransit_prm_direct_access_time_out)"
inbound microtransit egress from premium available,microtransit_prm_egress_available_in,~df.outbound & (microtransit_dest>0) & (dest_micro_prm_dist<microtransitMaxDist) & microtransit_operating
inbound microtransit direct egress from premium time,microtransit_prm_direct_egress_time_in,"dest_micro_prm_dist/microtransitSpeed*60"
inbound microtransit egress from premium available,microtransit_prm_egress_available_in,~df.outbound & (microtransit_dest>0) & (micro_prm_dist_tncin<microtransitMaxDist) & microtransit_operating
inbound microtransit direct egress from premium time,microtransit_prm_direct_egress_time_in,"micro_prm_dist_tncin/microtransitSpeed*60"
inbound microtransit egress from premium time,microtransit_prm_egress_time_in,"np.maximum(microtransit_prm_direct_egress_time_in + microtransitDiversionConstant, microtransitDiversionFactor*microtransit_prm_direct_egress_time_in)"
outbound nev access to premium available,nev_prm_access_available_out,df.outbound & (nev_orig>0) & (origin_micro_prm_dist<nevMaxDist) & nev_operating
outbound nev direct access to premium time,nev_prm_direct_access_time_out,"origin_micro_prm_dist/nevSpeed*60"
outbound nev access to premium available,nev_prm_access_available_out,df.outbound & (nev_orig>0) & (micro_prm_dist_tncout<nevMaxDist) & nev_operating
outbound nev direct access to premium time,nev_prm_direct_access_time_out,"micro_prm_dist_tncout/nevSpeed*60"
outbound nev access to premium time,nev_prm_access_time_out,"np.maximum(nev_prm_direct_access_time_out + nevDiversionConstant, nevDiversionFactor*nev_prm_direct_access_time_out)"
inbound nev egress from premium available,nev_prm_egress_available_in,~df.outbound & (nev_dest>0) & (dest_micro_prm_dist<nevMaxDist) & nev_operating
inbound nev direct egress from premium time,nev_prm_direct_egress_time_in,"dest_micro_prm_dist/nevSpeed*60"
inbound nev egress from premium available,nev_prm_egress_available_in,~df.outbound & (nev_dest>0) & (micro_prm_dist_tncin<nevMaxDist) & nev_operating
inbound nev direct egress from premium time,nev_prm_direct_egress_time_in,"micro_prm_dist_tncin/nevSpeed*60"
inbound nev egress from premium time,nev_prm_egress_time_in,"np.maximum(nev_prm_direct_egress_time_in + nevDiversionConstant, nevDiversionFactor*nev_prm_direct_egress_time_in)"
#,,
outbound microtransit access to mixed available,microtransit_mix_access_available_out,df.outbound & (microtransit_orig>0) & (origin_micro_mix_dist<microtransitMaxDist) & microtransit_operating
outbound microtransit direct access to mixed time,microtransit_mix_direct_access_time_out,"origin_micro_mix_dist/microtransitSpeed*60"
outbound microtransit access to mixed available,microtransit_mix_access_available_out,df.outbound & (microtransit_orig>0) & (micro_mix_dist_tncout<microtransitMaxDist) & microtransit_operating
outbound microtransit direct access to mixed time,microtransit_mix_direct_access_time_out,"micro_mix_dist_tncout/microtransitSpeed*60"
outbound microtransit access to mixed time,microtransit_mix_access_time_out,"np.maximum(microtransit_mix_direct_access_time_out + microtransitDiversionConstant, microtransitDiversionFactor*microtransit_mix_direct_access_time_out)"
inbound microtransit egress from mixed available,microtransit_mix_egress_available_in,~df.outbound & (microtransit_dest>0) & (dest_micro_mix_dist<microtransitMaxDist) & microtransit_operating
inbound microtransit direct egress from mixed time,microtransit_mix_direct_egress_time_in,"dest_micro_mix_dist/microtransitSpeed*60"
inbound microtransit egress from mixed available,microtransit_mix_egress_available_in,~df.outbound & (microtransit_dest>0) & (micro_mix_dist_tncin<microtransitMaxDist) & microtransit_operating
inbound microtransit direct egress from mixed time,microtransit_mix_direct_egress_time_in,"micro_mix_dist_tncin/microtransitSpeed*60"
inbound microtransit egress from mixed time,microtransit_mix_egress_time_in,"np.maximum(microtransit_mix_direct_egress_time_in + microtransitDiversionConstant, microtransitDiversionFactor*microtransit_mix_direct_egress_time_in)"
outbound nev access to mixed available,nev_mix_access_available_out,df.outbound & (nev_orig>0) & (origin_micro_mix_dist<nevMaxDist) & nev_operating
outbound nev direct access to mixed time,nev_mix_direct_access_time_out,"origin_micro_mix_dist/nevSpeed*60"
outbound nev access to mixed available,nev_mix_access_available_out,df.outbound & (nev_orig>0) & (micro_mix_dist_tncout<nevMaxDist) & nev_operating
outbound nev direct access to mixed time,nev_mix_direct_access_time_out,"micro_mix_dist_tncout/nevSpeed*60"
outbound nev access to mixed time,nev_mix_access_time_out,"np.maximum(nev_mix_direct_access_time_out + nevDiversionConstant, nevDiversionFactor*nev_mix_direct_access_time_out)"
inbound nev egress from mixed available,nev_mix_egress_available_in,~df.outbound & (nev_dest>0) & (dest_micro_mix_dist<nevMaxDist) & nev_operating
inbound nev direct egress from mixed time,nev_mix_direct_egress_time_in,"dest_micro_mix_dist/nevSpeed*60"
inbound nev egress from mixed available,nev_mix_egress_available_in,~df.outbound & (nev_dest>0) & (micro_mix_dist_tncin<nevMaxDist) & nev_operating
inbound nev direct egress from mixed time,nev_mix_direct_egress_time_in,"micro_mix_dist_tncin/nevSpeed*60"
inbound nev egress from mixed time,nev_mix_egress_time_in,"np.maximum(nev_mix_direct_egress_time_in + nevDiversionConstant, nevDiversionFactor*nev_mix_direct_egress_time_in)"
# Microtransit and NEV egress from transit,,
outbound microtransit egress from local available,microtransit_local_egress_available_out,df.outbound & (microtransit_dest>0) & (dest_micro_local_dist>maxWalkIfMTAccessAvailable) & (dest_micro_local_dist<microtransitMaxDist) & microtransit_operating
Expand Down

0 comments on commit b9918fa

Please sign in to comment.