62 const float final_speed)
64 auto sqr = [](
float f) {
return f *
f;};
65 float b = 4.0f * sqr(accel) / jerk;
66 float c = - 2.0f * accel * braking_distance - sqr(final_speed);
67 float max_speed = 0.5f * (-b + sqrtf(sqr(b) - 4.0
f * c));
88 float tan_alpha = tanf(alpha / 2.0
f);
89 float max_speed_in_turn = sqrtf(accel * d * tan_alpha);
91 return max_speed_in_turn;
float computeMaxSpeedInWaypoint(const float alpha, const float accel, const float d)
Vector< float, 6 > f(float t, const Matrix< float, 6, 1 > &, const Matrix< float, 3, 1 > &)
float computeMaxSpeedFromDistance(const float jerk, const float accel, const float braking_distance, const float final_speed)