public double getDx(double x)
	{
		if (len.length == 0 || len.length == 1)
		{
			return 0;
		}

		int index = Arrays.binarySearch(len, x);
		if (index < 0)
		{
			index = - (index + 1) - 1;
		}

		return b[index]
			+ 2 * c[index] * (x - len[index])
			+ 3 * d[index] * Math.pow(x - len[index], 2);
	}