本文整理汇总了C++中PiecewisePolynomial::getDuration方法的典型用法代码示例。如果您正苦于以下问题:C++ PiecewisePolynomial::getDuration方法的具体用法?C++ PiecewisePolynomial::getDuration怎么用?C++ PiecewisePolynomial::getDuration使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PiecewisePolynomial
的用法示例。
在下文中一共展示了PiecewisePolynomial::getDuration方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: testIntegralAndDerivative
void testIntegralAndDerivative() {
vector<Polynomial<CoefficientType>> polynomials;
int num_coefficients = 5;
int num_segments = 3;
typedef typename Polynomial<CoefficientType>::CoefficientsType CoefficientsType;
for (int i = 0; i < num_segments; ++i) {
CoefficientsType coefficients = CoefficientsType::Random(num_coefficients);
polynomials.push_back(Polynomial<CoefficientType>(coefficients));
}
// differentiate integral, get original back
PiecewisePolynomial<CoefficientType> piecewise(polynomials, generateSegmentTimes(num_segments));
PiecewisePolynomial<CoefficientType> piecewise_back = piecewise.integral().derivative();
if (!piecewise.isApprox(piecewise_back, 1e-10))
throw runtime_error("wrong");
// check value at start time
double value_at_t0 = uniform(generator);
PiecewisePolynomial<CoefficientType> integral = piecewise.integral(value_at_t0);
valuecheck(value_at_t0, integral.value(piecewise.getStartTime()), 1e-10);
// check continuity at knot points
for (int i = 0; i < piecewise.getNumberOfSegments() - 1; ++i) {
valuecheck(integral.getPolynomial(i).value(integral.getDuration(i)), integral.getPolynomial(i + 1).value(0.0));
}
}