35inline Eigen::Vector3d proNav(
double nav_gain,
const Eigen::Vector3d& velocity,
36 const Eigen::Vector3d& los,
const Eigen::Vector3d& los_rate,
37 double min_velocity = 15.0) {
38 const double v = std::max(velocity.norm(), min_velocity);
39 return -nav_gain * v * (los.normalized().cross(los_rate));
51inline double altitudeHold(
const Eigen::Vector3d& velocity,
double gain = 4.0) {
52 return -velocity.z() * gain;