Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Derivative function in matlab

  1. May 1, 2008 #1
    I wrote a user-defined function in matlab that is supposed to take the derivative of a function f(x) in the point that correspond to (x,f(x)). Here's the code
    Code (Text):

    function [fprime]=numderivative(f,x,h,tol)

    hd=h*10^-1;
    hh=h;
    hhdd=hd;
    itnum=numel(x);
    error=tol+1;
    for ii=1:itnum
        while error>tol
            fprime1=(f(x(ii)+h)-f(x(ii)))/h;
            fprime2=(f(x(ii)+hd)-f(x(ii)))/hd;
            error=abs(fprime1-fprime2);
            h=h*10^-1;
            hd=h*10^-1;
        end
        fprime(ii)=fprime1;
        h=hh;
        hd=hhdd;
        error=tol+1;
    end
    Obviously if you insert a real small tolerance (f(x(ii)+h)-f(x(ii))) would be zero even if the derivative is not zero. I'm trying to come up with something but I just don't know what to do.
    Need help.

    Thanks
    link
     
  2. jcsd
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted
Similar Discussions: Derivative function in matlab
  1. MATLAB function (Replies: 2)

  2. Matlab function (Replies: 1)

  3. Matlab functions (Replies: 0)

  4. Matlab functions (Replies: 0)

  5. MATLAB function (Replies: 1)

Loading...