@@ -1180,9 +1180,8 @@ bool NormalLaneChange::getLaneChangePaths(
1180
1180
(prepare_duration < 1e-3 ) ? 0.0
1181
1181
: ((prepare_velocity - current_velocity) / prepare_duration);
1182
1182
1183
- const double prepare_length =
1184
- current_velocity * prepare_duration +
1185
- 0.5 * longitudinal_acc_on_prepare * std::pow (prepare_duration, 2 );
1183
+ const auto prepare_length = utils::lane_change::calcPhaseLength (
1184
+ current_velocity, getCommonParam ().max_vel , longitudinal_acc_on_prepare, prepare_duration);
1186
1185
1187
1186
auto prepare_segment = getPrepareSegment (current_lanes, backward_path_length, prepare_length);
1188
1187
@@ -1234,9 +1233,9 @@ bool NormalLaneChange::getLaneChangePaths(
1234
1233
utils::lane_change::calcLaneChangingAcceleration (
1235
1234
initial_lane_changing_velocity, max_path_velocity, lane_changing_time,
1236
1235
sampled_longitudinal_acc);
1237
- const auto lane_changing_length =
1238
- initial_lane_changing_velocity * lane_changing_time +
1239
- 0.5 * longitudinal_acc_on_lane_changing * lane_changing_time * lane_changing_time ;
1236
+ const auto lane_changing_length = utils::lane_change::calcPhaseLength (
1237
+ initial_lane_changing_velocity, getCommonParam (). max_vel ,
1238
+ longitudinal_acc_on_lane_changing, lane_changing_time) ;
1240
1239
const auto terminal_lane_changing_velocity = std::min (
1241
1240
initial_lane_changing_velocity + longitudinal_acc_on_lane_changing * lane_changing_time,
1242
1241
getCommonParam ().max_vel );
0 commit comments