#include <cmath>
#include <iostream>
#include <vector>
#include <copp/copp.hpp>
int main()
{
auto path = copp::Path::from_parametric(
[](copp::Jet3 s) {
return std::vector<copp::Jet3>{
copp::sin(s),
copp::cos(2.0 * s),
};
},
0.0,
1.0);
std::vector<double> samples{0.0, 0.5, 1.0};
auto out = path.evaluate_up_to_3rd(samples);
std::cout << "dim = " << path.dim() << "\n";
std::cout << "q(0, 1) = " << out.q(0, 1) << "\n";
std::cout << "dq(0, 1) = " << out.dq.value()(0, 1) << "\n";
std::cout << "ddq(0, 1) = " << out.ddq.value()(0, 1) << "\n";
std::cout << "dddq(0, 1) = " << out.dddq.value()(0, 1) << "\n";
}