- Matlab 教程
- MATLAB - 首页
- MATLAB - 概述
- MATLAB - 特性
- MATLAB - 环境设置
- MATLAB - 编辑器
- MATLAB - 在线
- MATLAB - 工作区
- MATLAB - 语法
- MATLAB - 变量
- MATLAB - 命令
- MATLAB - 数据类型
- MATLAB - 运算符
- MATLAB - 日期和时间
- MATLAB - 数字
- MATLAB - 随机数
- MATLAB - 字符串和字符
- MATLAB - 文本格式化
- MATLAB - 时间表
- MATLAB - M 文件
- MATLAB - 冒号表示法
- MATLAB - 数据导入
- MATLAB - 数据导出
- MATLAB - 归一化数据
- MATLAB - 预定义变量
- MATLAB - 决策
- MATLAB - 决策语句
- MATLAB - If End 语句
- MATLAB - If Else 语句
- MATLAB - If…Elseif Else 语句
- MATLAB - 嵌套 If 语句
- MATLAB - Switch 语句
- MATLAB - 嵌套 Switch
- MATLAB - 循环
- MATLAB - 循环
- MATLAB - For 循环
- MATLAB - While 循环
- MATLAB - 嵌套循环
- MATLAB - Break 语句
- MATLAB - Continue 语句
- MATLAB - End 语句
- MATLAB - 数组
- MATLAB - 数组
- MATLAB - 向量
- MATLAB - 转置运算符
- MATLAB - 数组索引
- MATLAB - 多维数组
- MATLAB - 兼容数组
- MATLAB - 分类数组
- MATLAB - 元胞数组
- MATLAB - 矩阵
- MATLAB - 稀疏矩阵
- MATLAB - 表格
- MATLAB - 结构体
- MATLAB - 数组乘法
- MATLAB - 数组除法
- MATLAB - 数组函数
- MATLAB - 函数
- MATLAB - 函数
- MATLAB - 函数参数
- MATLAB - 匿名函数
- MATLAB - 嵌套函数
- MATLAB - 返回语句
- MATLAB - 空函数
- MATLAB - 局部函数
- MATLAB - 全局变量
- MATLAB - 函数句柄
- MATLAB - 滤波函数
- MATLAB - 阶乘
- MATLAB - 私有函数
- MATLAB - 子函数
- MATLAB - 递归函数
- MATLAB - 函数优先级顺序
- MATLAB - Map 函数
- MATLAB - Mean 函数
- MATLAB - End 函数
- MATLAB - 错误处理
- MATLAB - 错误处理
- MATLAB - Try...Catch 语句
- MATLAB - 调试
- MATLAB - 绘图
- MATLAB - 绘图
- MATLAB - 绘制数组
- MATLAB - 绘制向量
- MATLAB - 条形图
- MATLAB - 直方图
- MATLAB - 图形
- MATLAB - 2D 线性图
- MATLAB - 3D 图
- MATLAB - 格式化绘图
- MATLAB - 对数坐标轴图
- MATLAB - 绘制误差条
- MATLAB - 绘制 3D 等值线图
- MATLAB - 极坐标图
- MATLAB - 散点图
- MATLAB - 绘制表达式或函数
- MATLAB - 绘制矩形
- MATLAB - 绘制频谱图
- MATLAB - 绘制网格曲面
- MATLAB - 绘制正弦波
- MATLAB - 插值
- MATLAB - 插值
- MATLAB - 线性插值
- MATLAB - 2D 数组插值
- MATLAB - 3D 数组插值
- MATLAB - 多项式
- MATLAB - 多项式
- MATLAB - 多项式加法
- MATLAB - 多项式乘法
- MATLAB - 多项式除法
- MATLAB - 多项式的导数
- MATLAB - 变换
- MATLAB - 变换
- MATLAB - 拉普拉斯变换
- MATLAB - 拉普拉斯滤波器
- MATLAB - 高斯-拉普拉斯滤波器
- MATLAB - 逆傅里叶变换
- MATLAB - 傅里叶变换
- MATLAB - 快速傅里叶变换
- MATLAB - 2D 逆余弦变换
- MATLAB - 向坐标轴添加图例
- MATLAB - 面向对象
- MATLAB - 面向对象编程
- MATLAB - 类和对象
- MATLAB - 函数重载
- MATLAB - 运算符重载
- MATLAB - 用户定义类
- MATLAB - 复制对象
- MATLAB - 代数
- MATLAB - 线性代数
- MATLAB - 高斯消去法
- MATLAB - 高斯-约旦消去法
- MATLAB - 简化行阶梯形式
- MATLAB - 特征值和特征向量
- MATLAB - 积分
- MATLAB - 积分
- MATLAB - 二重积分
- MATLAB - 梯形法则
- MATLAB - 辛普森法则
- MATLAB - 其他
- MATLAB - 微积分
- MATLAB - 微分
- MATLAB - 矩阵的逆
- MATLAB - GNU Octave
- MATLAB - Simulink
- MATLAB - 有用资源
- MATLAB - 快速指南
- MATLAB - 有用资源
- MATLAB - 讨论
MATLAB - 多项式的导数
在数学中,导数表示函数相对于变量的变化率。简单来说,它告诉我们函数在任何给定点的变化情况。导数是微积分的基础,广泛应用于物理学、工程学和经济学等领域,用于模拟变化和运动。
例如,如果你有一个函数描述了汽车随时间变化的位置,那么该函数的导数将给出汽车的速度(位置的变化率)。
多项式的导数
多项式是由变量的不同幂与系数组合而成的数学表达式。例如,多项式 P(x) = 3x2 + 2x + 5 是一个二次多项式。
多项式函数的导数是通过应用一个简单的规则找到的:对于每一项,将系数乘以指数,然后将指数减 1。这个过程对多项式中的每一项重复。
例如,考虑多项式
P(x) = 3x3 + 4x2 + 2x + 1
导数 ,P′(x),计算如下:
- 对于项 3x3:将 3 乘以 3(指数),得到 9x2。
- 对于项 4x2:将 4 乘以 2,得到 8x。
- 对于项 2x:将 2 乘以 1,得到 2。
- 常数项 (1) 的导数为 0。
因此,导数为:
P′(x) = 9x2 + 8x + 2
MATLAB 中的导数
MATLAB 使用内置函数可以轻松计算多项式的导数。MATLAB 中的多项式由一个向量表示,该向量包含其系数,并按变量的降幂排序。
为了找到多项式的导数,MATLAB 提供了 polyder 函数。
语法
k = polyder(p) k = polyder(a,b) [q,d] = polyder(a,b)
语法解释
k = polyder(p) 计算由 p 中的系数给出的多项式的导数,得到一个新的多项式 k(x),它表示导数 d/dx p(x)。
k = polyder(a,b) 计算两个多项式 a 和 b 的乘积的导数,得到一个新的多项式 k(x),它表示。
$$\mathrm{\frac{d}{dx}[a(x) \: \cdot \: b(x)]}$$
[q, d] = polyder(a, b) 计算两个多项式 a 和 b 的商的导数,返回两个多项式:q(x)(分子)和 d(x)(分母),表示 a(x)/b(x) 的导数。
示例 1:使用 polyder(p) 计算导数
假设我们有一个多项式
P(x) = 4x3 + 3x2 + 2x + 1
这个多项式可以用 MATLAB 中的系数向量表示:
p = [4 3 2 1];
为了计算这个多项式的导数,我们在 MATLAB 中使用 polyder 函数:
k = polyder(p);
在 matlab 命令窗口中执行代码后,输出结果为。
>> p = [4 3 2 1]; k = polyder(p) k = 12 6 2 >>
对于项 4x3,导数为 12x2(将系数 4 乘以指数 3,并将指数减 1)。
对于项 3x2,导数为 6x。
对于项 2x,导数为 2。
对于常数项 1 的导数为 0。
因此,导数多项式为
k(x) = 12x2 + 6x + 2
在 Matlab 中,k 的结果将是:[12 6 2]
示例 2:另一个查找多项式导数的示例
考虑以下多项式
p(x) = 5x4 + 2x3 + 7x2 - 3x + 8
这个多项式可以用 MATLAB 中的系数向量表示:
p = [5 -2 7 -3 8]
为了找到这个多项式的导数,我们将使用 matlab 中的 polyder 函数。
k = polyder(p)
此命令将返回多项式 p 的导数的系数。
当您在 matlab 命令窗口中执行代码时,输出结果为
>> p = [5 -2 7 -3 8]; k = polyder(p) k = 20 -6 14 -3 >>
向量 k = [20 -6 14 -3] 表示多项式
k(x) = 20x3 - 6x2 + 14x - 3
示例 3:使用 polyder(a, b) 计算两个多项式乘积的导数
让我们考虑两个多项式
a(x) = 2x2 + 3x + 1 b(x) = 4x + 5
这些多项式可以用 MATLAB 中的系数向量表示
a = [2 3 1] b = [4 5]
为了计算这两个多项式乘积的导数,我们使用带两个输入参数的 polyder 函数。
k = polyder(a, b);
这将返回 a(x) 和 b(x) 的乘积的导数的系数。
当您在 matlab 命令窗口中执行代码时,得到的输出结果为
>> a = [2 3 1]; b = [4 5]; k = polyder(a, b) k = 24 44 19 >>
因此,导数多项式为:k(x) = 24x2 + 44x + 19
示例 4:两个给定多项式的导数
考虑两个不同的多项式。
a(x) = 3x3 + 2x2 + x + 4 b(x) = x2 - 5x + 6
这些多项式可以用 MATLAB 中的以下系数向量表示。
a = [3 2 1 4]; b = [1 -5 6];
为了计算这两个多项式乘积的导数,我们使用以向量 a 和 b 作为输入的 polyder 函数
k = polyder(a, b);
此命令将返回 a(x) 和 b(x) 的乘积的导数的系数。
当代码在 matlab 命令窗口中执行时,输出结果为
>> a = [3 2 1 4]; b = [1 -5 6]; k = polyder(a, b) k = 15 -52 27 22 -14 >>
因此,导数多项式为:
k(x) = 15x4 - 52x3 + 27x2 + 22x - 14
示例 5:使用 [q, d] = polyder(a, b) 计算两个多项式商的导数
让我们考虑两个多项式:
a(x) = 4x2 + 3x + 2 b(x) = x2 - 2x + 1
这些多项式可以用 Matlab 中的系数向量表示。
a = [4 3 2]; b = [1 -2 1];
为了计算 a(x) / b(x) 的导数,我们使用带两个输出参数 q 和 d 的 polyder 函数。
[q,d] = polyder(a,b)
这将返回两个多项式:q(x)(分子)和 d(x)(分母),表示 a(x) / b(x) 的导数。
当代码在 matlab 命令窗口中执行时,输出结果为
>> a = [4 3 2]; b = [1 -2 1]; [q,d] = polyder(a,b) q = -11 4 7 d = 1 -4 6 -4 1 >>