15 std::vector<double> s{0.0, 0.5, 1.0};
16 std::vector<double> amax{1.0, 1.0, 1.0};
17 std::vector<double> a_linearization{0.25, 0.25, 0.25};
40 std::cout <<
"TOPP3-LP done.\n";
41 std::cout <<
"profile length = " << profile.len() <<
"\n";
42 std::cout <<
"stationary start/end = "
43 << profile.num_stationary_start <<
" / "
44 << profile.num_stationary_end <<
"\n";
45 std::cout <<
"t_final = " << time.t_final <<
"\n";
Owning raw constraint-buffer facade.
Constraints & add_constraint_1st(Span< const double > amax, std::size_t idx_s)
Constraints & append_s(Span< const double > s)
ConstraintsRef ref() noexcept
Borrow this owning object as a solver/constraint reference.
Prepared TOPP3 problem descriptor.
COPP_API TimeProfile s_to_t_topp3(Span< const double > s, const Profile3rd &profile, double t0=0.0)
Convert a third-order profile to cumulative time t(s).
COPP_API Profile3rd solve(const Problem &problem, const clarabel::Options &options={})
Solve TOPP3-LP and return an accepted third-order profile.
Third-order endpoint boundary values.
Shared Clarabel options for COPP/TOPP SOCP-style solvers.