MATLAB 单变量函数一阶及N阶求导

1 对一维函数的求导及求特定函数处的变量值

%%最简单的一阶单变量函数进行求导
function usemyfunArray()        %主函数必须位于最上方
clc
clear
syms x           %syms x代表着声明符号变量x,只有声明了符号变量才可以进行符号运算,包括求导。
%f(x)=sin(x)+x^2; %我们输入的要求导的函数
y = diff(sin(x)+x^2);  %代表着对单变量函数f(x)求一阶导数
disp('f(x)=sin(x)+x^2的导数是');
pretty(y);       %将当前变量显示为我们常用的书面形式

%求特定值对应的导数值
f = subs(y,'x',4); %subs其实是一个替换函数,y中的x替换成2,也就完成了 y=2×x,x = 4的求解吧。
fprintf('当x=4时,f(x)=sin(x)+x^2的导数是%d\n',f);

缺点是:红色部分不能这样写,可能是因为f(x)不能辨认出来吧,以后改进

结果:

f(x)=sin(x)+x^2的导数是

cos(x) + 2 x
当x=4时,f(x)=sin(x)+x^2的导数是7.346356e+000

 

2.对一维函数的多阶求导

我们还是以f(x)=sin(x)+x^2 为例,进行示例介绍,在MATLAB中,按照以下次序输入命令

syms x           %syms x代表着声明符号变量x,只有声明了符号变量才可以进行符号运算,包括求导。
%f(x)=sin(x)+x^2; %我们输入的要求导的函数
y = diff(sin(x)+x^2,2);  %代表着对单变量函数f(x)求二阶导数
disp('f(x)=sin(x)+x^2的导数是');
pretty(y);       %将当前变量显示为我们常用的书面形式

注意:diff(f(x),n),n阶导数,n我们可以根据实际需要,取任意正整数。

 

posted @ 2015-09-28 20:59  平常心,平常心  阅读(6792)  评论(0编辑  收藏  举报