56 assert(j >= 0 &&
size_t(j) < N);
57 const double dtheta =
M_PI / (N > 1 ? (N - 1) : 1);
64 static double Point(
size_t N,
int j,
double a,
double b) {
65 assert(j >= 0 &&
size_t(j) < N);
66 const double dtheta =
M_PI / (N - 1);
68 return a + (b -
a) * (1. +
cos(-
M_PI + dtheta * j)) / 2;
74 for (
size_t j = 0;
j <
N;
j++) points(
j) = Point(N,
j);
81 const double T1 = (a +
b) / 2,
T2 = (b - a) / 2;
82 points = T1 + (
T2 * points).
array();
94 static Weights CalculateWeights(
size_t N,
double x,
double a = -1,
101 static Weights DerivativeWeights(
size_t N,
double x,
double a = -1,
108 static DiffMatrix DifferentiationMatrix(
size_t N,
double a = -1,
129 static Weights IntegrationWeights(
size_t N,
double a = -1,
double b = 1);
136 size_t N,
double a = -1,
double b = 1) {
138 for (
size_t j = 0;
j <
N;
j++) {
139 Xmat.col(
j) =
f(Point(N,
j,
a,
b));
static double Point(size_t N, int j)
Specific Chebyshev point.
Matrix< RealScalar, Dynamic, Dynamic > M
Jet< T, N > cos(const Jet< T, N > &f)
static Vector Points(size_t N)
All Chebyshev points.
#define EIGEN_MAKE_ALIGNED_OPERATOR_NEW
static const Pose3 T2(Rot3::Rodrigues(0.3, 0.2, 0.1), P2)
static Vector Points(size_t N, double a, double b)
All Chebyshev points, within [a,b] interval.
Compute an interpolating basis.
Base class and basic functions for Manifold types.
static Matrix matrix(std::function< Eigen::Matrix< double, M, 1 >(double)> f, size_t N, double a=-1, double b=1)
Point2(* f)(const Point3 &, OptionalJacobian< 2, 3 >)
static double Point(size_t N, int j, double a, double b)
Specific Chebyshev point, within [a,b] interval.
static const Similarity3 T1(R, Point3(3.5, -8.2, 4.2), 1)
Special class for optional Jacobian arguments.
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x