Skip to content

Commit

Permalink
Merge pull request #232 from SANDAG/ff_zeroauto_calib
Browse files Browse the repository at this point in the history
Updating flexible fleet configuration
  • Loading branch information
bhargavasana authored Nov 1, 2024
2 parents 8eb5c05 + b9918fa commit 16d1eac
Show file tree
Hide file tree
Showing 15 changed files with 75 additions and 63 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -208,10 +208,7 @@ Description,Target,Expression
,_timeDrive,"_timeDrive + odt_skims['HOV3_L_TIME'] * np.where(((trip_mode == 'SHARED3') & vot1),1,0)"
,_timeDrive,"_timeDrive + odt_skims['SOV_NT_M_TIME'] * np.where(((trip_mode == 'DRIVEALONE') & vot2),1,0)"
,_timeDrive,"_timeDrive + odt_skims['HOV2_M_TIME'] * np.where(((trip_mode == 'SHARED2') & vot2),1,0)"
#,_timeDrive,"_timeDrive + (odt_skims['HOV2_M_TIME'] + _TAXI_WAIT_TIME) * np.where((trip_mode == 'TAXI'),1,0)"
#,_timeDrive,"_timeDrive + (odt_skims['HOV2_M_TIME'] + _SINGLE_TNC_WAIT_TIME) * np.where((trip_mode == 'TNC_SINGLE'),1,0)"
,_timeDrive,"_timeDrive + odt_skims['HOV3_M_TIME'] * np.where(((trip_mode == 'SHARED3') & vot2),1,0)"
#,_timeDrive,"_timeDrive + (odt_skims['HOV3_M_TIME'] + _SHARED_TNC_WAIT_TIME) * np.where((trip_mode == 'TNC_SHARED'),1,0) * _TNC_SHARED_IVT_FACTOR"
,_timeDrive,"_timeDrive + odt_skims['SOV_NT_H_TIME'] * np.where(((trip_mode == 'DRIVEALONE') & vot3),1,0)"
,_timeDrive,"_timeDrive + odt_skims['HOV2_H_TIME'] * np.where(((trip_mode == 'SHARED2') & vot3),1,0)"
,timeDrive,"_timeDrive + odt_skims['HOV3_H_TIME'] * np.where(((trip_mode == 'SHARED3') & vot3),1,0)"
Expand Down
2 changes: 1 addition & 1 deletion src/asim/configs/crossborder/trip_mode_choice.csv
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ util_TNC_SINGLE_IVT,TNC Single - In-vehicle time,c_ivt * s2_time_skims,,,,,,,,,1
util_TNC_SINGLE_wait,TNC Single - Wait time,c_ivt * 1.5 * tnc_single_wait_time,,,,,,,,,1,
util_TNC_SINGLE_cost,TNC Single - Cost,@c_cost * ((TNC_single_baseFare + (df.s2_dist_skims * TNC_single_costPerMile) + (df.s2_time_skims * TNC_single_costPerMinute).clip(lower=TNC_single_costMinimum)) * 100 + df.s2_cost_skims),,,,,,,,,1,
util_TNC Shared_switch,TNC Shared - switch turn-off (depends on data availability),@((~df.nev_available) & (~df.microtransit_available) & (scenarioYear==2022)),,,,,,,,,,-999
util_TNC_SHARED_IVT,TNC Shared - In-vehicle time,"@df.c_ivt * np.where(df.nev_available, df.nev_time, np.where(df.microtransit_available, df.microtransit_time, df.s3_time_skims)) * tnc_shared_ivt_factor",,,,,,,,,,1
util_TNC_SHARED_IVT,TNC Shared - In-vehicle time,"@df.c_ivt * np.where(df.nev_available, df.nev_time, np.where(df.microtransit_available, df.microtransit_time, df.s3_time_skims * TNC_shared_IVTFactor))",,,,,,,,,,1
util_TNC_SHARED_wait,TNC Shared - Wait time,"@df.c_ivt * 1.5 * np.where(df.nev_available, nevWaitTime, np.where(df.microtransit_available, microtransitWaitTime, df.tnc_shared_wait_time))",,,,,,,,,,1
util_TNC_SHARED_cost,TNC Shared - Cost,"@c_cost * np.where(df.nev_available, nevCost, np.where(df.microtransit_available, microtransitCost, ((TNC_shared_baseFare + (df.s3_dist_skims * TNC_shared_costPerMile) + (df.s3_time_skims * TNC_shared_costPerMinute).clip(lower=TNC_shared_costMinimum)))) * 100 + df.s3_cost_skims)",,,,,,,,,,1
#,,,,,,,,,,,,
Expand Down
1 change: 0 additions & 1 deletion src/asim/configs/crossborder/trip_mode_choice.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ CONSTANTS:
time_distrib_stddev_work: 0.7
time_distrib_mean_nonwork: 1.0
time_distrib_stddev_nonwork: 0.6
tnc_shared_ivt_factor: 1.25
tnc_single_wait_time_mean_by_density:
1: 10.3
2: 8.5
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -251,23 +251,23 @@ Description,Target,Expression
,_timeDrive,"_timeDrive + odt_skims['SOV_NT_M_TIME'] * np.where(((trips.trip_mode == 'DRIVEALONE') & vot_2),1,0)"
,_timeDrive,"_timeDrive + odt_skims['HOV2_M_TIME'] * np.where(((trips.trip_mode.isin(['SHARED2','TAXI','TNC_SINGLE'])) & vot_2),1,0)"
,_timeDrive,"_timeDrive + odt_skims['HOV3_M_TIME'] * np.where(((trips.trip_mode.isin(['SHARED3'])) & vot_2),1,0)"
,_timeDrive,"_timeDrive + odt_skims['HOV3_M_TIME'] * np.where(((trips.trip_mode.isin(['TNC_SHARED'])) & vot_2 & ~trips.nev_available & ~trips.microtransit_available),1,0)"
,_timeDrive,"_timeDrive + odt_skims['HOV3_M_TIME'] * TNC_shared_IVTFactor * np.where(((trips.trip_mode.isin(['TNC_SHARED'])) & vot_2 & ~trips.nev_available & ~trips.microtransit_available),1,0)"
,_timeDrive,"_timeDrive + odt_skims['SOV_NT_H_TIME'] * np.where(((trips.trip_mode == 'DRIVEALONE') & vot_3),1,0)"
,_timeDrive,"_timeDrive + odt_skims['HOV2_H_TIME'] * np.where(((trips.trip_mode.isin(['SHARED2','TAXI','TNC_SINGLE'])) & vot_3),1,0)"
,_timeDrive,"_timeDrive + odt_skims['HOV3_H_TIME'] * np.where(((trips.trip_mode.isin(['SHARED3'])) & vot_3),1,0)"
,timeDrive,"_timeDrive + odt_skims['HOV3_H_TIME'] * np.where(((trips.trip_mode.isin(['TNC_SHARED'])) & vot_3 & ~trips.nev_available & ~trips.microtransit_available),1,0)"
,timeDrive,"_timeDrive + odt_skims['HOV3_H_TIME'] * TNC_shared_IVTFactor * np.where(((trips.trip_mode.isin(['TNC_SHARED'])) & vot_3 & ~trips.nev_available & ~trips.microtransit_available),1,0)"
,_distanceDrive,"odt_skims['SOV_NT_L_DIST'] * np.where(((trips.trip_mode == 'DRIVEALONE') & vot_1),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['HOV2_L_DIST'] * np.where(((trips.trip_mode.isin(['SHARED2','TAXI','TNC_SINGLE'])) & vot_1),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['HOV3_L_DIST'] * np.where(((trips.trip_mode.isin(['SHARED3'])) & vot_1),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['HOV3_L_DIST'] * np.where(((trips.trip_mode.isin(['TNC_SHARED'])) & vot_1 & ~trips.nev_available & ~trips.microtransit_available),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['SOV_NT_M_DIST'] * np.where(((trips.trip_mode == 'DRIVEALONE') & vot_2),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['HOV2_M_DIST'] * np.where(((trips.trip_mode.isin(['SHARED2','TAXI','TNC_SINGLE'])) & vot_2),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['HOV3_M_DIST'] * np.where(((trips.trip_mode.isin(['SHARED3'])) & vot_2),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['HOV3_M_DIST'] * np.where(((trips.trip_mode.isin(['TNC_SHARED'])) & vot_2 & ~trips.nev_available & ~trips.microtransit_available),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['HOV3_M_DIST'] * TNC_shared_IVTFactor * np.where(((trips.trip_mode.isin(['TNC_SHARED'])) & vot_2 & ~trips.nev_available & ~trips.microtransit_available),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['SOV_NT_H_DIST'] * np.where(((trips.trip_mode == 'DRIVEALONE') & vot_3),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['HOV2_H_DIST'] * np.where(((trips.trip_mode.isin(['SHARED2','TAXI','TNC_SINGLE'])) & vot_3),1,0)"
,_distanceDrive,"_distanceDrive + odt_skims['HOV3_H_DIST'] * np.where(((trips.trip_mode.isin(['SHARED3'])) & vot_3),1,0)"
,distanceDrive,"_distanceDrive + odt_skims['HOV3_H_DIST'] * np.where(((trips.trip_mode.isin(['TNC_SHARED'])) & vot_3 & ~trips.nev_available & ~trips.microtransit_available),1,0)"
,distanceDrive,"_distanceDrive + odt_skims['HOV3_H_DIST'] * TNC_shared_IVTFactor * np.where(((trips.trip_mode.isin(['TNC_SHARED'])) & vot_3 & ~trips.nev_available & ~trips.microtransit_available),1,0)"
,_costTollDrive,"odt_skims['SOV_NT_L_TOLLCOST'] * np.where(((trips.trip_mode == 'DRIVEALONE') & vot_1),1,0)"
,_costTollDrive,"_costTollDrive + (odt_skims['HOV2_L_TOLLCOST'] / tour_participants) * np.where(((trips.trip_mode == 'SHARED2') & vot_1),1,0)"
,_costTollDrive,"_costTollDrive + (odt_skims['HOV3_L_TOLLCOST'] / tour_participants) * np.where(((trips.trip_mode == 'SHARED3') & vot_1),1,0)"
Expand Down
7 changes: 5 additions & 2 deletions src/asim/configs/resident/tour_mode_choice.csv
Original file line number Diff line number Diff line change
Expand Up @@ -349,7 +349,7 @@ util_TNC Single - Wait time,TNC Single - Wait time,@df.totalWaitSingleTNC * df.t
util_TNC Single - Cost,TNC Single - Cost,"@((np.maximum(TNC_single_baseFare*2 + (df.s2_dist_skims_out + df.s2_dist_skims_inb) * TNC_single_costPerMile + (df.s2_time_skims_out + df.s2_time_skims_inb) * TNC_single_costPerMinute, TNC_single_costMinimum*2)*100 + df.s2_cost_skims_out + df.s2_cost_skims_inb))/df.cost_sensitivity",,,,,,,,,,,,,,,,,,,coef_income,,,,
#,TNC Shared,,,,,,,,,,,,,,,,,,,,,,,,
util_TNC Shared_switch,TNC Shared - switch turn-off (depends on data availability),@((~df.nev_available) & (~df.microtransit_available) & (scenarioYear==2022)),,,,,,,,,,,,,,,,,,,,-999,,,
util_TNC Shared - In-vehicle time,TNC Shared - In-vehicle time,"@(np.where(df.nev_available, df.nev_time, np.where(df.microtransit_available, df.microtransit_time, (df.s3_time_skims_out + df.s3_time_skims_inb)))) * TNC_shared_IVTFactor * df.time_factor",,,,,,,,,,,,,,,,,,,,coef_ivt,,,
util_TNC Shared - In-vehicle time,TNC Shared - In-vehicle time,"@(np.where(df.nev_available, df.nev_time, np.where(df.microtransit_available, df.microtransit_time, (df.s3_time_skims_out + df.s3_time_skims_inb) * TNC_shared_IVTFactor))) * df.time_factor",,,,,,,,,,,,,,,,,,,,coef_ivt,,,
util_TNC Shared - Wait time,TNC Shared - Wait time,"@np.where(df.nev_available, 2*nevWaitTime, np.where(df.microtransit_available, 2*microtransitWaitTime, df.totalWaitSharedTNC)) * df.time_factor",,,,,,,,,,,,,,,,,,,,coef_wait,,,
util_TNC Shared - Cost,TNC Shared - Cost,"@np.where(df.nev_available, 2*nevCost, np.where(df.microtransit_available, 2*microtransitCost, (np.maximum(TNC_shared_baseFare*2 + (df.s3_dist_skims_out + df.s3_dist_skims_inb) * TNC_shared_costPerMile + (df.s3_time_skims_out + df.s3_time_skims_inb)* TNC_shared_costPerMinute, TNC_shared_costMinimum*2)*100 + df.s3_cost_skims_out + df.s3_cost_skims_inb)))/df.cost_sensitivity",,,,,,,,,,,,,,,,,,,,coef_income,,,
#,School bus,,,,,,,,,,,,,,,,,,,,,,,,
Expand Down Expand Up @@ -394,4 +394,7 @@ util_escooter_access,escooter utility for in-vehicle time,@(microConstant + micr
util_escooter_cost_inb,escooter utility for inbound cost,@((microFixedCost + microVarCost*df.escooter_time_inb)/df.cost_sensitivity),,,,,,,,,,,,,,,,,,,,,,,coef_income
util_escooter_cost_out,escooter utility for outbound cost,@((microFixedCost + microVarCost*df.escooter_time_out)/df.cost_sensitivity),,,,,,,,,,,,,,,,,,,,,,,coef_income
#,Calibration from on-board survey
util_calib_onboard,Calibration coefficient to match implied number of tours from on-board survey,1,,,,,,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,,,,,,
util_calib_onboard,Calibration coefficient to match implied number of tours from on-board survey,1,,,,,,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,,,,,,
#,Flexible fleet calibration for zero-auto households
util_calib_mt_zeroautohh,Calibration coefficient for zero-auto households traveling within microtransit service area,@(df.microtransit_available & (df.auto_ownership == 0)),,,,,,,,,,,,,,,,,,,,coef_calib_mt_zeroautohh,,,
util_calib_nev_zeroautohh,Calibration coefficient for zero-auto households traveling within NEV service area,@(df.nev_available & (df.auto_ownership == 0)),,,,,,,,,,,,,,,,,,,,coef_calib_nev_zeroautohh,,,
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
2 changes: 2 additions & 0 deletions src/asim/configs/resident/tour_mode_choice_coefficients.csv
Original file line number Diff line number Diff line change
Expand Up @@ -757,3 +757,5 @@ coef_calib_autosufficienthhin_EBIKE_school,-2.363534838614524,F
coef_calib_autosufficienthhin_ESCOOTER_atwork,-4.0,F
coef_calib_autosufficienthhin_EBIKE_atwork,-2.67253074,F
coef_calib_onboard,-0.293475781,F
coef_calib_mt_zeroautohh,4.825,F
coef_calib_nev_zeroautohh,4.825,F
Original file line number Diff line number Diff line change
Expand Up @@ -225,4 +225,6 @@ coef_calib_zeroautohhjointtou_TNC_SINGLE,coef_zero,coef_zero,coef_zero,coef_cali
coef_calib_zeroautohhjointtou_TNC_SHARED,coef_zero,coef_zero,coef_zero,coef_calib_zeroautohhjointtou_TNC_SHARED_maint,coef_calib_zeroautohhjointtou_TNC_SHARED_maint,coef_calib_zeroautohhjointtou_TNC_SHARED_maint,coef_calib_zeroautohhjointtou_TNC_SHARED_disc,coef_calib_zeroautohhjointtou_TNC_SHARED_disc,coef_calib_zeroautohhjointtou_TNC_SHARED_disc,coef_zero
coef_calib_zeroautohhjointtou_EBIKE,coef_zero,coef_zero,coef_zero,coef_calib_zeroautohhjointtou_EBIKE_maint,coef_calib_zeroautohhjointtou_EBIKE_maint,coef_calib_zeroautohhjointtou_EBIKE_maint,coef_calib_zeroautohhjointtou_EBIKE_disc,coef_calib_zeroautohhjointtou_EBIKE_disc,coef_calib_zeroautohhjointtou_EBIKE_disc,coef_zero
coef_calib_zeroautohhjointtou_ESCOOTER,coef_zero,coef_zero,coef_zero,coef_calib_zeroautohhjointtou_ESCOOTER_maint,coef_calib_zeroautohhjointtou_ESCOOTER_maint,coef_calib_zeroautohhjointtou_ESCOOTER_maint,coef_calib_zeroautohhjointtou_ESCOOTER_disc,coef_calib_zeroautohhjointtou_ESCOOTER_disc,coef_calib_zeroautohhjointtou_ESCOOTER_disc,coef_zero
coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard
coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard,coef_calib_onboard
coef_calib_mt_zeroautohh,coef_calib_mt_zeroautohh,coef_calib_mt_zeroautohh,coef_calib_mt_zeroautohh,coef_calib_mt_zeroautohh,coef_calib_mt_zeroautohh,coef_calib_mt_zeroautohh,coef_calib_mt_zeroautohh,coef_calib_mt_zeroautohh,coef_calib_mt_zeroautohh,coef_calib_mt_zeroautohh
coef_calib_nev_zeroautohh,coef_calib_nev_zeroautohh,coef_calib_nev_zeroautohh,coef_calib_nev_zeroautohh,coef_calib_nev_zeroautohh,coef_calib_nev_zeroautohh,coef_calib_nev_zeroautohh,coef_calib_nev_zeroautohh,coef_calib_nev_zeroautohh,coef_calib_nev_zeroautohh,coef_calib_nev_zeroautohh
Loading

0 comments on commit 16d1eac

Please sign in to comment.