16 constexpr std::size_t dim = 2;
29 for (std::size_t j = 0; j < s.
size(); ++j)
31 const double x = s[j];
33 dq(0, j) = 3.0 * x * x;
37 q(1, j) = std::sin(x);
38 dq(1, j) = std::cos(x);
39 ddq(1, j) = -std::sin(x);
40 dddq(1, j) = -std::cos(x);
45 std::vector<double> samples{0.0, 0.5, 1.0};
49 std::cout <<
"dim = " << path.dim() <<
"\n";
50 std::cout <<
"q(0, 2) = " << out.
q(0, 2) <<
"\n";
51 std::cout <<
"dq(0, 2) = " << out.dq.value()(0, 2) <<
"\n";
52 std::cout <<
"ddq(0, 2) = " << out.ddq.value()(0, 2) <<
"\n";
53 std::cout <<
"dddq(0, 2) = " << out.dddq.value()(0, 2) <<
"\n";
static Path from_evaluator_3rd(std::size_t dim, double s_min, double s_max, PathEvaluator3rd evaluator)
Build a path from a batch evaluator with explicit derivatives up to third order.
PathDerivatives evaluate_up_to_3rd(Span< const double > s) const
Evaluate position, first derivative, second derivative, and third derivative.