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!