matlab多项式运算与代数方程求解器

多项式的表示方式

在 Matlab 中,n 次多项式是用一个长度为 n+1的向量来表示,缺少的幂次项系数为 0。
在这里插入图片描述在这里插入图片描述

多项式加减运算

Matlab 没有提供专门进行多项式加减运算的函数,事实上,多项式的加减就是其所对应的系数向量的加减运算
对于次数相同的多项式,可以直接对其系数向量进行加减运算;
如果两个多项式次数不同,则应该把低次多项式中系数不足的高次项用 0 补足,然后进行加减运算。

多现实四则运算

k=conv(p,q)

计算多项式 2x3-x2+3和2x+1的乘积

多项式乘法

在这里插入图片描述

多项式除法
[k,r]=deconv(p,q)

其中 k 返回的是多项式 p 除以 q 的商,r 是余式。

多项式求导

k=polyder§ : 多项式 p 的导数;
k=polyder(p,q): p*q 的导数;
[k,d]=polyder(p,q): p/q 的导数,k 是分子,d 是分母

例:
已知p(x)=2x3-x2+3,q(x)=2x+1,
求p’ , (p*q)’ , (p/q)’
在这里插入图片描述

多项式的值

计算多项式在定点的值

代数多项式求值:
y= polyval(p,x): 计算多项式 p 在 x 点的值
若 x 是向量或矩阵,则采用数组运算 (点运算)

例:
已知p(x)=2x3-x2+3,分别取x=2和一个2*2矩阵,求p(x)在x处的每个分量上的值
在这里插入图片描述

矩阵多项式求值

Y=polyvalm(p,X)
采用的是普通矩阵运算
X 必须是方阵

例:
在这里插入图片描述在这里插入图片描述

多项式的零点

x=roots§:若 p 是 n 次多项式,则输出是 p=0 的 n 个根组成的 n 维向量。

例:
已知p(x)=2x3-x2+3,求p(x)的零点
在这里插入图片描述
若已知多项式的全部零点,则可用 poly 函数给出该多项式
在这里插入图片描述

线性方程组求解

linsolve(A,b):解线性方程组
在这里插入图片描述在这里插入图片描述

非线性方程的数值求解

fzero(f,x0):求函数 f 在 x0 附近取值为零的点。

1.可能有多个点,但 fzero 只给出距离 x0 最近的一个
2.x0 是一个标量,不能缺省
3.fzero 先找出一个包含 x0 的区间,使得 f 在这个区间两个端点上的函数值异号,然后再在这个区间内寻找函数 f 的零点;如果找不到这样的区间,则返回 NaN。
4.由于 fzero 是根据函数是否穿越横轴来决定零点,因此它基本无法确定函数曲线仅触及横轴但不穿越的零点,如 |sin(x)| 的零点。

fzero(f,[a,b]):求函数 f 在 [a,b] 区间内取值为0的点。函数在 [a,b] 内可能有多个零点,但 fzero 只给出一个。
参数 f 可通过以下方式给出:
在这里插入图片描述例:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

符号求解

s=solve(f,v):求方程f=0关于指定自变量的解;
s=solve(f):求方程f=0关于默认自变量的解。

f符号表达式(低版本可以用字符串表示的方程或字符串 )
f 中不含等号,即方程为 f=0。

例:
解方程x2-3*x+1=0
在这里插入图片描述
solve 也可以用来解方程组
**solve( f1 , f2 , … , fN , v1 , v2 , … , vN)
**
求解由 f1 , f2 , … , fN 确定的方程组关于 v1 , v2 , … , vN 的解

例:
在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值