public void Test09BilinearInterpolateTest() { double[] rowArray = null; double columnTarget = 0; double rowTarget = 0; double expected = 0; SABRInterpolationInterface siif = SABRInterpolationInterface.Instance(); double actual = siif.BilinearInterpolate(_bilinColumns, rowArray, _bilinData, columnTarget, rowTarget); Assert.AreEqual(expected, actual); }
public void Test11BilinearInterpolateTest() { double[] columnTarget = _bilinColumnTarget; double[] rowTarget = _bilinRowTarget; double[] expected = _bilinExpected; SABRInterpolationInterface siif = SABRInterpolationInterface.Instance(); for (int i = 0; i < rowTarget.Length; i++) { double actual = siif.BilinearInterpolate(_bilinColumns, _bilinRows, _bilinData, columnTarget[i], rowTarget[i]); Assert.AreEqual(expected[i], Math.Round(actual, 4)); } }
public void Test06CubicHermiteSplineInterpolateTest() { double expected = 10.99; //0 double target = 10000; string expectedFail = "Cubic Hermite Spline now supports extrapolation"; try { SABRInterpolationInterface siif = SABRInterpolationInterface.Instance(); double actual = siif.CubicHermiteSplineInterpolate(_chsXArray, _chsYArray, target); Assert.AreEqual(expected, actual); } catch (Exception ex) { Assert.AreEqual(expectedFail, ex.Message); } }