code: private double cubicInterpolate(final double Y0, final double Y1, final double Y2, final double Y3, final double MU) {
          final double A0;
          final double A1;
          final double A2;
          final double A3;
          final double MU2;
  
          MU2 = MU * MU;
          A0 = Y3 - Y2 - Y0 + Y1;
          A1 = Y0 - Y1 - A0;
          A2 = Y2 - Y0;
          A3 = Y1;
  
          return ((A0 * MU * MU2) + (A1 * MU2) + (A2 * MU) + A3);
      }
docs: Returns the value smoothed by a cubic spline interpolation function
  @param Y0
  @param Y1
  @param Y2
  @param Y3
  @param MU
  @return the value smoothed by a cubic spline interpolation function