2013-10-27 77 views
1

我想计算下列函数的导数在Matlab中的点x = 1.0:在一个给定的点计算衍生物 - MATLAB

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

我试过,但它返回PY = []

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

行'sym x'不会像您想要的那样创建符号变量'x'。从答案中可以看出,正确的命令是“sum x”(或者'x = sym('x');')。您需要使用['subs'](http://www.mathworks.com/help/symbolic/subs.html)来评估符号派生。 – horchler

回答

0
syms x real 
v = sin(x)+ cos(3*x) 
diff(v) 
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)

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