作为编程练习,我编写了一个Matlab函数,该函数使用有限差分法找到函数的导数。在脚本中我调用了函数并希望使用内置函数进行检查,除非我在实现它时遇到了麻烦。
为了得到一个检查,我使用diff(eqn)来得到微分方程,但是我不知道如何使用这个方程然后求解一个特定的值,例如。 x = 2。
这是我的代码:
syms x
eqn= cos(x);
%set value for the derivative to be evaluated at
x2 = 2;
%create function handle
f = @(x) cos(x);
%call finite difference function
yderiv = derivative(f,x2)
%use built-in to get differentiated function
ycheck = diff(eqn)
输出:
yderiv = -0.9093
ycheck =
-sin(x)的
有关如何在x2上解决ycheck的任何帮助,或者使用不同的方法都将非常感激。
干杯:)
答案 0 :(得分:-2)
要计算具有有限差异的导数,您不需要使用的符号表达式。
你需要:
dx = 0.01
x = 0:dx:2*pi
y = cos(x)
diff
功能dx
。其余的(在x = 2时得到y的导数值)一旦完成这些步骤就应该清楚了。