考虑以下代码:
f = @(x) x.^2;
是否可以在不定义符号变量的情况下将函数句柄f
的派生为另一个函数句柄?
答案 0 :(得分:6)
否,要获取派生函数,您需要使用Symbolic工具箱。
但是您可以通过创建如下函数来获得近似值(有限差分近似值):
f = @(x) x.^2;
d = 1e-6;
df = @(x) (f(x+d)-f(x))/d;
d
在这里确定近似值的精度。如果将其设置得太小,您将最终陷入浮点舍入误差域,因此请小心!
测试:
x = -2:0.01:2;
max(abs(df(x) - 2*x)) % returns 1.0006e-06