function main format long e x = 1.1 f = @sin fp = @cos fpx = fp(x) hmin = 1.0e-14; hmax = 1.0e-2; loghmin = log10(hmin); loghmax = log10(hmax); npts = 500; logh = linspace(loghmin,loghmax,npts); h = 10.^logh; fdh = getfd(f,x,h); err = fdh - fpx; logabserr = log10(abs(err)); plot(logh,logabserr) xlabel('log10 h'); ylabel('log10 error'); title('Error in forward difference approx to derivative'); end function fds=getfd(f,x,h) fds = (f(x+h)-f(x))./h end