Skip to main content

SplineOptimizationParameters Struct

Declaration

struct SplineOptimizationParameters { ... }

Included Headers

#include <spline_trajectory.hpp>

Public Constructors Index

SplineOptimizationParameters (const Eigen::Index num_dims_in)

Public Member Attributes Index

const Eigen::Indexnum_dims = 0

Number of dimensions for the spline optimization. More...

doubleweight_velocity = 10.0

Weight for the velocity term in the cost function. More...

doubleweight_acceleration = 1.0

Weight for the acceleration term in the cost function. More...

doubleweight_jerk = 0.0

Weight for the jerk term in the cost function. More...

boolsoft_position = false

Whether each point's position is fit with a least-squares penalty instead of a hard interpolation constraint. More...

doubleweight_position = 100.0

Least-squares weight pulling each point toward its target position when soft_position is true. Ignored otherwise. Larger values track the points more closely; smaller values smooth more. Callers may override this default for their workload (the chunked trajectory executor does). More...

Eigen::VectorNdend_acceleration

Desired end acceleration for each dimension. More...

Eigen::VectorNdend_velocity

Desired end velocity for each dimension. More...

Eigen::VectorNdstart_acceleration

Desired start acceleration for each dimension. More...

Eigen::VectorNdstart_velocity

Desired start velocity for each dimension. More...

doubleconstraint_norm_tolerance = 1E-6

Tolerance for the norm of the constraint violations. More...

Eigen::VectorNdvelocity_limits

Velocity limits for each dimension, used to enforce dynamic constraints during spline optimization. More...

Eigen::VectorNdacceleration_limits

Acceleration limits for each dimension, used to enforce dynamic constraints during spline optimization. More...

doubledt = 0.1

The discrete timestep used for sampling to detect constraint violations in seconds. More...

Definition at line 16 of file spline_trajectory.hpp.

Public Constructors

SplineOptimizationParameters()

SplineOptimizationParameters::SplineOptimizationParameters (const Eigen::Index num_dims_in)
inline explicit

Definition at line 18 of file spline_trajectory.hpp.

Public Member Attributes

acceleration_limits

Eigen::VectorNd SplineOptimizationParameters::acceleration_limits

Acceleration limits for each dimension, used to enforce dynamic constraints during spline optimization.

Definition at line 86 of file spline_trajectory.hpp.

constraint_norm_tolerance

double SplineOptimizationParameters::constraint_norm_tolerance = 1E-6

Tolerance for the norm of the constraint violations.

Definition at line 78 of file spline_trajectory.hpp.

dt

double SplineOptimizationParameters::dt = 0.1

The discrete timestep used for sampling to detect constraint violations in seconds.

Definition at line 90 of file spline_trajectory.hpp.

end_acceleration

Eigen::VectorNd SplineOptimizationParameters::end_acceleration

Desired end acceleration for each dimension.

Definition at line 62 of file spline_trajectory.hpp.

end_velocity

Eigen::VectorNd SplineOptimizationParameters::end_velocity

Desired end velocity for each dimension.

Definition at line 66 of file spline_trajectory.hpp.

num_dims

const Eigen::Index SplineOptimizationParameters::num_dims = 0

Number of dimensions for the spline optimization.

Definition at line 28 of file spline_trajectory.hpp.

soft_position

bool SplineOptimizationParameters::soft_position = false

Whether each point's position is fit with a least-squares penalty instead of a hard interpolation constraint.

When false (default), the spline passes exactly through every point. When true it becomes a smoothing spline: the curve may deviate from a jittery input to lower its velocity, acceleration, and jerk, since every point after the first is only pulled toward its target position (see weight_position) rather than matched exactly. Still held exactly: the first point's position, position continuity at the interior knots, velocity and acceleration continuity, and the start and end velocity and acceleration boundary conditions.

Definition at line 52 of file spline_trajectory.hpp.

start_acceleration

Eigen::VectorNd SplineOptimizationParameters::start_acceleration

Desired start acceleration for each dimension.

Definition at line 70 of file spline_trajectory.hpp.

start_velocity

Eigen::VectorNd SplineOptimizationParameters::start_velocity

Desired start velocity for each dimension.

Definition at line 74 of file spline_trajectory.hpp.

velocity_limits

Eigen::VectorNd SplineOptimizationParameters::velocity_limits

Velocity limits for each dimension, used to enforce dynamic constraints during spline optimization.

Definition at line 82 of file spline_trajectory.hpp.

weight_acceleration

double SplineOptimizationParameters::weight_acceleration = 1.0

Weight for the acceleration term in the cost function.

Definition at line 36 of file spline_trajectory.hpp.

weight_jerk

double SplineOptimizationParameters::weight_jerk = 0.0

Weight for the jerk term in the cost function.

Definition at line 40 of file spline_trajectory.hpp.

weight_position

double SplineOptimizationParameters::weight_position = 100.0

Least-squares weight pulling each point toward its target position when soft_position is true. Ignored otherwise. Larger values track the points more closely; smaller values smooth more. Callers may override this default for their workload (the chunked trajectory executor does).

Definition at line 58 of file spline_trajectory.hpp.

weight_velocity

double SplineOptimizationParameters::weight_velocity = 10.0

Weight for the velocity term in the cost function.

Definition at line 32 of file spline_trajectory.hpp.


The documentation for this struct was generated from the following file:


Generated via doxygen2docusaurus 2.2.2 by Doxygen 1.9.8.