// below three functions assume time t and strike k is in good region private double GetFirstDerivativeToTime(double t, double k) { double forwardTime = TimeBump.BumpForward(t); double backwardTime = TimeBump.BumpBackward(t); return((ImpliedVol.GetValue(forwardTime, k) - ImpliedVol.GetValue(backwardTime, k)) / (forwardTime - backwardTime)); }