33 std::vector<double>
getBiLevelX0(
const perception_msgs::msg::EgoData& ego_data)
override;
41 std::vector<double>
getHighLevelX0(
const perception_msgs::msg::EgoData& ego_data)
override;
57 static double projectVectorAonV(
const geometry_msgs::msg::Vector3& a,
const geometry_msgs::msg::Vector3& v);
double distance_front_axle_
void convertToTrajectoryMsg(trajectory_planning_msgs::msg::Trajectory &trajectory) override
Maps the optimized state trajectory into a trajectory message for a kinematic bicycle model with rear...
std::vector< double > getHighLevelX0(const perception_msgs::msg::EgoData &ego_data) override
Computes the initial optimizer state using high-level stabilization.
std::vector< double > getBiLevelX0(const perception_msgs::msg::EgoData &ego_data) override
Computes the initial optimizer state using bi-level stabilizaion.
double distance_rear_axle_
double bi_level_dDelta_rear_
static double projectVectorAonV(const geometry_msgs::msg::Vector3 &a, const geometry_msgs::msg::Vector3 &v)
Projects the acceleration vector onto the current direction of motion.
double computeVehicleSlipAngle(const double &delta_front, const double &delta_rear) const
Computes the kinematic vehicle slip angle from front and rear steering angles.
double bi_level_dDelta_front_
TrajectoryOptimizationRWSNode(const rclcpp::NodeOptions &options)
Initializes the optimization node for a kinematic bicycle model with rear wheel steering.
void initializeTrajectory(trajectory_planning_msgs::msg::Trajectory &trajectory) override
Initializes a drivable trajectory message for a kinematic bicycle model with rear wheel steering.
Namespace for trajectory_optimization package.