没有合适的资源?快使用搜索试试~ 我知道了~
美赛数学建模专用-第四章-MATLAB的数值计算功能.doc
0 下载量 35 浏览量
2022-11-22
15:33:22
上传
评论
收藏 142KB DOC 举报
温馨提示
试读
33页
美赛数学建模专用-第四章-MATLAB的数值计算功能.doc
资源推荐
资源详情
资源评论
美赛数学建模专用-
第四章 MATLAB 的数值计算功能
Chapter 4: Numerical computation of MATLAB
一、多项式(Polynomial)`
1.多项式的表达与创建(Expression and Creating of polynomial)
(1) 多项式的表达(expression of polynomial)_
Matlab 用行矢量表达多项式系数(Coefficient),各元素按变量的降
幂顺序排列,如多项式为:
P(x)=a
0
x
n
+a
1
x
n-1
+a
2
x
n-2
…a
n-1
x+a
n
则其系数矢量(Vector of coefficient)为:P=[a
0
a
1
… a
n-1
a
n
]
如将根矢量(Vector of root)表示为:
ar=[ ar
1
ar
2
… ar
n
]
则根矢量与系数矢量之间关系为:
(x-ar
1
)(x- ar
2
) … (x- ar
n
)= a
0
x
n
+a
1
x
n-1
+a
2
x
n-2
…a
n-1
x+a
n
(2)多项式的创建(polynomial creating)
a)系数矢量的直接输入法
利用 poly2sym 函数直接输入多项式的系数矢量,就可方便的建立
符号形式的多项式。
例:创建多项式 x
3
-4x
2
+3x+2
poly2sym([1 -4 3 2])
ans =
x^3-4*x^2+3*x+2
POLY Convert roots to polynomial.
POLY(A), when A is an N by N matrix, is a row vector with
N+1 elements which are the coefficients of the characteristic
polynomial, DET(lambda*EYE(SIZE(A)) - A) .
POLY(V), when V is a vector, is a vector whose elements are
the coefficients of the polynomial whose roots are the
elements of V . For vectors, ROOTS and POLY are inverse
functions of each other, up to ordering, scaling, and
roundoff error.
b) 由根矢量创建多项式
通过调用函数 p=poly(ar)产生多项式的系数矢量, 再利用 poly2sym
函数就可方便的建立符号形式的多项式。
注:(1)根矢量元素为 n ,则多项式系数矢量元素为 n+1;
(2)函数 poly2sym(pa) 把多项式系数矢量表达成符号形式的多项式,
缺省情况下自变量符号为 x,可以指定自变量。
(3)使用简单绘图函数 ezplot 可以直接绘制符号形式多项式的曲线。
例 1:由根矢量创建多项式。将多项式(x-6)(x-3)(x-8)表示为系数形式
a=[6 3 8] %根矢量
pa=poly(a) %求系数矢量
ppa=poly2sym(pa) %以符号形式表示原多项式
ezplot(ppa,[-50,50])
pa =
1 -17 90 -144
ppa =
x^3-17*x^2+90*x-144
注:含复数根的根矢量所创建的多项式要注意:
(1)要形成实系数多项式,根矢量中的复数根必须共轭成对;
(2)含复数根的根矢量所创建的多项式系数矢量中,可能带有很小的
虚部,此时可采用取实部的命令(real)把虚部滤掉。
进行多项式的求根运算时,有两种方法,一是直接调用求根函数
roots,poly 和 roots 互为逆函数。另一种是先把多项式转化为伴随矩阵,
然后再求其特征值,该特征值即是多项式的根。
例 3: 由给定复数根矢量求多项式系数矢量。
r=[-0.5 -0.3+0.4i -0.3-0.4i];
p=poly(r)
pr=real(p)
ppr=poly2sym(pr)
p =
1.0000 1.1000 0.5500 0.1250
pr =
1.0000 1.1000 0.5500 0.1250
ppr =
x^3+11/10*x^2+11/20*x+1/8
c) 特征多项式输入法
用 poly 函数可实现由矩阵的特征多项式系数创建多项式。
条件:特征多项式系数矢量的第一个元素必须为一。
例 2: 求三阶方阵 A 的特征多项式系数,并转换为多项式形式。
a=[6 3 8;7 5 6; 1 3 5]
Pa=poly(a) %求矩阵的特征多项式系数矢量
Ppa=poly2sym(pa)
Pa =
1.0000 -16.0000 38.0000 -83.0000
Ppa =
x^3-17*x^2+90*x-144
注:n 阶方阵的特征多项式系数矢量一定是 n +1 阶的。
注:(1)要形成实系数多项式,根矢量中的复数根必须共轭成对;
(2)含复数根的根矢量所创建的多项式系数矢量中,可能带有很小的
虚部,此时可采用取实部的命令(real)把虚部滤掉。
进行多项式的求根运算时,有两种方法,一是直接调用求根函数
roots,poly 和 roots 互为逆函数。另一种是先把多项式转化为伴随矩阵,
然后再求其特征值,该特征值即是多项式的根。
例 4: 将多项式的系数表示形式转换为根表现形式。
求 x
3
-6x
2
-72x-27 的根
a=[1 -6 -72 -27]
r=roots(a)
r =
12.1229
-5.7345
-0.3884
MATLAB 约定,多项式系数矢量用行矢量表示,根矢量用列矢量表示。
>>
1. 多项式的乘除运算(Multiplication and division of polynomial)
多项式乘法用函数 conv(a,b)实现, 除法用函数 deconv(a,b)实现。
例 1:a(s)=s
2
+2s+3, b(s)=4s
2
+5s+6,计算 a(s)与 b(s)的乘积。
a=[1 2 3]; b=[4 5 6];
c=conv(a,b)
cs=poly2sym(c,’s’)
c =
4 13 28 27 18
cs =
4*s^4+13*s^3+28*s^2+27*s+18
例 2: 展开(s
2
+2s+2)(s+4)(s+1) (多个多项式相乘)
c=conv([1,2,2],conv([1,4],[1,1]))
cs=poly2sym(c,’s’) %(指定变量为 s)
c =
1 7 16 18 8
cs =
s^4+7*s^3+16*s^2+18*s+8
例 2:求多项式 s^4+7*s^3+16*s^2+18*s+8 分别被(s+4),(s+3)除后的结
果。
c=[1 7 16 18 8];
[q1,r1]=deconv(c,[1,4]) %q—商矢量, r—余数矢量
[q2,r2]=deconv(c,[1,3])
cc=conv(q2,[1,3]) %对除(s+3)结果检验
test=((c-r2)==cc)
q1 =
1 3 4 2
r1 =
0 0 0 0 0
q2 =
1 4 4 6
r2 =
0 0 0 0 -10
cc =
1 7 16 18 18
test =
1 1 1 1 1
1. 其 他 常 用 的 多 项 式 运 算 命 令 (Other computation command of
polynomial)
pa=polyval(p,s) 按数组运算规则计算给定 s 时多项式 p 的值。
pm=polyvalm(p,s) 按矩阵运算规则计算给定 s 时多项式 p 的值。
[r,p,k]=residue(b,a) 部分分式展开,b,a 分别是分子分母多项式系数
矢量,r,p,k 分别是留数、极点和直项矢量
p=polyfit(x,y,n) 用 n 阶多项式拟合 x,y 矢量给定的数据。
polyder(p) 多项式微分。
注: 对于多项式 b(s)与不重根的 n 阶多项式 a(s)之比,其部分分式
展开为:
)(
)(
)(
2
2
1
1
sk
ps
r
L
ps
r
ps
r
sa
sb
n
n
�
�
��
�
�
�
�
式中:p
1
,p
2
,…,p
n
称为极点(poles),r
1
,r
2
,…,r
n
称为留数(residues),k(s)
称为直项(direct terms),假如 a(s)含有 m 重根 p
j,
则相应部分应写成:
m
j
mj
j
j
j
j
ps
r
L
ps
r
ps
r
)()(
1
2
1
�
��
�
�
�
���
RESIDUE Partial-fraction expansion (residues).
[R,P,K] = RESIDUE(B,A) finds the residues, poles and direct term of a partial
剩余32页未读,继续阅读
资源评论
xinkai1688
- 粉丝: 349
- 资源: 8万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功