计算给定点的导数 - matlab

时间:2013-10-27 21:14:21

标签: matlab derivative

我想在Matlab中计算以下函数的导数,点x = 1.0:

 v = sin(x)+ cos(3*x)

我尝试了这个,但它返回py = []

sym x,
x=1.0,
y=sin(x) + cos(3*x),
py=diff(y);

4 个答案:

答案 0 :(得分:2)

syms x
y=sin(x)+cos(3*x);
py=diff(y);
subs(py,x,1.0)

答案 1 :(得分:0)

Matlab中有多个函数叫做diff。对于这个问题重要的是“标准”差异,用于vecor /矩阵输入。这就是你所说的。如果您阅读文档,您将了解空输出:http://www.mathworks.de/de/help/matlab/ref/diff.html

适用于您的情况是符号工具箱:http://www.mathworks.de/de/help/symbolic/diff.html示例说明了如果工具箱可用,如何使用。

答案 2 :(得分:0)

syms x real
v = sin(x)+ cos(3*x)
diff(v)

答案 3 :(得分:0)

使用这样一个简单的函数v(x) = sin(x)+ cos(3*x),只需使用其衍生的显式公式,即vv = dv/dx = cos(x) - 3*sin(3*x)

然后它在x = 1.0中的值是:vv(1.0) = cos(1.0) - 3*sin(3*1.0)