Diff, derivative does not exist
10 次查看(过去 30 天)
显示 更早的评论
My code is:
fun=@(x) abs(x-1);
pfun=@(x) diff(fun(x),x);
feval(pfun,1)
It didn't return any answer after running the code. My general point, if we want to use Matlab to take the derivative of a function, but the derivative of this funtion does not exist everywhere (like the point 1 in fun(x)). How Matlab return the value? If there are infinite numbers of such points, how Matlab deal with this issue? Any help is very appreciated!
4 个评论
Walter Roberson
2019-1-27
编辑:Walter Roberson
2019-1-27
You are not doing a symbolic derivative. You are evaluating pfun(1) which is pfun with numeric input. You pass that numeric input to abs(x-1), getting a numeric output. Your diff() of a numeric input is finite differences, not derivative.
回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!