* The coefficients for interval 1 represent the following polynomial of order 3:
* f(x) = a1(x−x1)^3 + b1(x−x1)^2 + c1(x−x1) + d1
*
* All data is internally computed as values of type double. Nevertheless there are overloaded functions for input of type float. These are converted internally.
//! Uses cubic splines to interpolate the function defined by the given data pairs vdSupportingPoints and vdDataPoints to a single point. BEWARE of the internal conversion to type double!
ITA_EXCEPT_INVALID_PARAMETER("Polynom order must be greater or equal zero.");
constintiMinimumNBreakPoints=2;// At least one interval
if(vdBreakPnts.size()<iMinimumNBreakPoints)
ITA_EXCEPT_INVALID_PARAMETER("Number of break points not sufficient for polynom order: Expected "+std::to_string(iMinimumNBreakPoints)+" but got "+std::to_string(vdBreakPoints.size())+".");
constintnCoeffs=NumIntervals()*(iOrder+1);
if(vdCoeffs.size()!=nCoeffs)
ITA_EXCEPT_INVALID_PARAMETER("Invalid number of coefficients: Expected "+std::to_string(nCoeffs)+" but got "+std::to_string(vdCoeffs.size())+".");
//!creates one .txt file with the Points a spline function shall be constructed for and one with the cooeficients, this programm has computes. A third contains the coefficenc of the derivate. All can be read by the SplineTest.m into MATLAB.