@@ -1274,9 +1274,8 @@ bool NormalLaneChange::getLaneChangePaths(
1274
1274
(prepare_duration < 1e-3 ) ? 0.0
1275
1275
: ((prepare_velocity - current_velocity) / prepare_duration);
1276
1276
1277
- const double prepare_length =
1278
- current_velocity * prepare_duration +
1279
- 0.5 * longitudinal_acc_on_prepare * std::pow (prepare_duration, 2 );
1277
+ const auto prepare_length = utils::lane_change::calcPhaseLength (
1278
+ current_velocity, getCommonParam ().max_vel , longitudinal_acc_on_prepare, prepare_duration);
1280
1279
1281
1280
auto prepare_segment = getPrepareSegment (current_lanes, backward_path_length, prepare_length);
1282
1281
@@ -1328,9 +1327,9 @@ bool NormalLaneChange::getLaneChangePaths(
1328
1327
utils::lane_change::calcLaneChangingAcceleration (
1329
1328
initial_lane_changing_velocity, max_path_velocity, lane_changing_time,
1330
1329
sampled_longitudinal_acc);
1331
- const auto lane_changing_length =
1332
- initial_lane_changing_velocity * lane_changing_time +
1333
- 0.5 * longitudinal_acc_on_lane_changing * lane_changing_time * lane_changing_time ;
1330
+ const auto lane_changing_length = utils::lane_change::calcPhaseLength (
1331
+ initial_lane_changing_velocity, getCommonParam (). max_vel ,
1332
+ longitudinal_acc_on_lane_changing, lane_changing_time) ;
1334
1333
const auto terminal_lane_changing_velocity = std::min (
1335
1334
initial_lane_changing_velocity + longitudinal_acc_on_lane_changing * lane_changing_time,
1336
1335
getCommonParam ().max_vel );
0 commit comments