您的位置首页百科知识

如何用matlab求带绝对值函数的导数

如何用matlab求带绝对值函数的导数

的有关信息介绍如下:

如何用matlab求带绝对值函数的导数

用matlab求函数的导数:如果一个函数表达式中有绝对值,那对该函数求导就需要注意啦!该函数可能在他的零点处导数不存在,所以我们不能用传统的方法求导,应该在零点处分别求左导数和右导数,如果左导数和右导数存在并相等则该点的导数存在,否则该点导数不存在。

下面我们就来说一下如何用matlab求带绝对值函数的导数。

判断函数的性质

下面我们就以带绝对值的正选函数f(x)=sin|x|为例来求导。先来判断一下一下该函数的性质。我们先用matlab画一下该函数的图形,具体代码如下:

%画出f(x)=sin|x|图形

clear

x=-2*pi:pi/20:2*pi;

y=sin(abs(x));

plot(x,y,'r','LineWidth',1.5)

title('函数f(x)=sin|x|图形'),xlabel('x'),ylabel('y')

函数图形为:

x≥0,有导数的定义求右导数

当x≥0时,我们可以去掉函数中的绝对值,这时候函数f就变为:f(x)=sinx,这时候求右导数就简单多了,不过还是得用定义发求右导数。具体代码以及计算结果请看下图:

x≤0,由导数的定义求左导数

同理,当x≤0时,去掉函数中的绝对值,f就变为:f(x)=sin(-x).。用定义发求左导数。具体代码以及计算结果请看下图,有图上的结果再结合上一部结论可以得出,f(x)在x=0点的导数不存在,而且在小于0的区间和大于0的区间导数不一致。

直接利用diff求导

matlab提供了一个直接求函数导数的指令diff,然而当函数含有绝对值时候是否还有效呢?我们来探索一下。有下图中可以看出,当x=0时,函数的导数出现了错误的结果。

画出图形代码

下面我们画出函数f(x)、两个区间分别的导数图形。具体代码如下图所示:

画出的图形如下图所示:

如果本经验对你有帮助,记得点有用、收藏、评论哦!欢迎点击右边,分享给好友!