35 if (m_knots.size() - m_functions.size() != 1) {
37 <<
")-functions(" << m_functions.size() <<
")";
39 auto knotsIter = m_knots.begin();
40 while (++knotsIter != m_knots.end()) {
41 if (*knotsIter <= *(knotsIter-1)) {
57 if (x < *knotsBegin) {
60 if (x == *knotsBegin) {
65 if (findX == knotsEnd) {
94 auto prevKnotIter = knotIter - 1;
95 if (max <= *prevKnotIter) {
98 if (min < *knotIter) {
99 double down = (min > *prevKnotIter) ? min : *prevKnotIter;
100 double up = (max < *knotIter) ? max : *knotIter;
105 return direction * result;