DoubleMatrix2D coltQ = DoubleFactory2D.dense.make(Q);
DoubleMatrix2D coltN = Algebra.ZERO.subMatrix(DoubleFactory2D.dense.make(N), 1, x.length-1, 1, h-1).copy();
DoubleMatrix2D coltM = Algebra.ZERO.mult(Algebra.ZERO.transpose(coltN), coltN);
DoubleMatrix2D coltP;
coltP = Algebra.ZERO.solve(coltM, coltQ);
double[] pxTemp = coltP.viewColumn(0).toArray();
double[] pyTemp = coltP.viewColumn(1).toArray();
double[] px = new double[h+1];
double[] py = new double[h+1];
px[0] = D[0][0];
py[0] = D[0][1];