MATLAB的初等代数运算

上传人:豆浆 文档编号:30484717 上传时间:2018-01-29 格式:DOC 页数:7 大小:164KB
返回 下载 相关 举报
MATLAB的初等代数运算_第1页
第1页 / 共7页
MATLAB的初等代数运算_第2页
第2页 / 共7页
MATLAB的初等代数运算_第3页
第3页 / 共7页
MATLAB的初等代数运算_第4页
第4页 / 共7页
MATLAB的初等代数运算_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《MATLAB的初等代数运算》由会员分享,可在线阅读,更多相关《MATLAB的初等代数运算(7页珍藏版)》请在金锄头文库上搜索。

1、 MATLAB 的初等代数运算 第 16 页第二章 MATLAB 的初等代数运算学习目标:1、熟悉 MATLAB 符号表达式的化简和初等代数运算操作。2、熟悉多项式运算的 MATLAB 命令及其用法。第一节 符号表达式的化简一、 MATLAB 提供了多种化简符号表达式的函数命令。函数格式 说 明factor(s) 因式分解expand(s) 展开符号表达式 scollect(s,x)collect(s,v)对表达式 s 中的每一个函数按 x 的次数合并系数。按指定变量 v 的次数合并系数。n,d=numden(s) 符号表达式 s 的通分simple(s) 显示多种方法化简,最后给出表达式 s

2、 的最简型。simplify(s) 用一般化简法化简符号表达式 s。radsimp(s) 对根式表达式 s 化简horner(s) 符号表达式 s 的嵌套形式阅读下列程序:1)分解因式 1x3 syms x factor(x3-1)ans =(x-1)*(x2+x+1)2)将 cos(3x)展开 syms x expand(cos(3*x)ans =4*cos(x)3-3*cos(x)3)将 展开52x expand(x+2)5)ans =x5+10*x4+40*x3+80*x2+80*x+324)将 按 x 的次数合并yx22 syms x y collect(x2*y+y*x-x2-2*x

3、) MATLAB 的初等代数运算 第 17 页ans =(y-1)*x2+(y-2)*x4)化简 cos(2x)+2sin2x syms x y simplify(cos(2*x)+2*sin(x)2)ans =1上机实践: 1、求 展开式中系数最大的项632x2、求证: (用 simple 或 simplify 命令把左边的符号表达aa4sin83cos4式化简)3、因式分解: 6123xx4、试用两次 simple 命令化简: 3281xf二、 函数的代数运算:命令格式 说 明symadd(f,g) 符号表达式 f 加上符号表达式 gsymsub(f,g) 符号表达式 f 减去符号表达式

4、gsymmul(f,g) 符号表达式 f 乘上符号表达式 gsymdiv(f,g) 符号表达式 f 除符号表达式 gsympow(f,p) 符号表达式 f 的 p 次幂,p 可以是表达式三、 复合函数的建立:命令格式 说 明compose(f,g) 生成函数 f(g(x),注意:此时与手写方式完全不同!compose(f,g,z) 生成复合函数 f(g(z), 复合函数以 z 为自变量 syms x z f=2x;g=sin(x); compose(f,g)ans =2sin(x) compose(g,f)ans = MATLAB 的初等代数运算 第 18 页sin(2x) compose(g

5、,f,z)ans =sin(2z)第二节 多项式运算:一、 多项式的建立:方法一:1)多项式按降幂排列,写出系数向量,一定要把缺项的系数补 0。2)用 poly2sym 命令建立多项式。格式:poly2sym(p) % p 为多项式的系数向量如:输入多项式: 32,65234 xsxx p=1 ,2, 0 ,-5, 6;s=1, 2, 3;p1= poly2sym(p)p1 =x4+2*x3-5*x+6s1= poly2sym(s)s1 =x2+2*x+3方法二:用 syms 命令建立syms 是生成符号变量的命令,其格式为:syms 变量名 1 变量名 2 变量名 3 注:变量之间用空格分隔

6、,不能用逗号。如:多项式 7432xp syms x; q=3*x2+4*x+7q =3*x2+4*x+7二、 求多项式的值:命令格式:polyval (p,a) % 求 x=a 时多项式 p 的值 x=a,b,c; polyval(p,x) % 求 x=a ,x=b,x=c 时多项式 p 的值 如:polyval(p,-2) % 把 x=-2 代入多项式 p 求值ans =16polyval(s,3/4) % 把 x=3/4 代入多项式 s 求值ans =5.0625 MATLAB 的初等代数运算 第 19 页问:运行 polyval(p1,-2)结果如何?运行 polyval(q,3),结

7、果又如何?试试看注:MATLAB 中的操作命令是用 C 语言编写的一段程序,对数据类型有规定。多项式求值命令 polyval 要求多项式用其系数向量表示,命令运行时只能识别数组型数据,不能识别符号型或字符串型数据。三、 多项式的加减乘除运算:1)多项式的相加相减就是同类项的系数相加减,利用 MATLAB 进行多项式的加减运算可化为数组(其系数向量)的加减运算。但注意:两个数组的长度要相同,既把两个多项式看作同次多项式,缺项系数为 0。如: p=1,2,0,-5,6;s=0,0,1,2,3; p+sans =1 2 1 -3 9 % 该数组为求和后的多项式的各项系数,用 poly2sym 命令可

8、转成多项式poly2sym(p+s)ans =x4+2*x3+x2-3*x+9 p-sans =1 2 -1 -7 32)多项式乘法除法运算:命令格式 说 明conv(p,q) 多项式 p 乘以 q ,显示乘积的系数向量 deconv(p,q) 多项式 p 除以 q , 只显示商的系数向量t,r=deconv(p,q) 多项式 p 除以 q,商的系数向量为 t,余式的系数向量为 r 如: ps=conv(p,s)ps =0 0 1 4 7 1 -4 -3 18 poly2sym(ps)ans =x6+4*x5+7*x4+x3-4*x2-3*x+18 s=1,2,3; deconv(p,s) %

9、命令运行时,数组 p 与数组 s 的长度不要求相同ans =1 0 -3 % 显示商式的各项系数 t,r=deconv(p,s) t =1 0 -3r =0 0 0 1 15 poly2sym(t)ans =x2-3问:若运行 conv(p1,s1) ,deconv(p1,s1)结果如何?为什么?试试看。四、 多项式的微分运算:命令格式 说 明polyder(p) 求 p 的一阶导数 MATLAB 的初等代数运算 第 20 页polyder(p,s) 求 ps 的一阶导数r,t=polyder(p,s) /tr如: r,t=polyder(p,s)r =2 8 20 23 -12 -27t =

10、1 4 10 12 9五、 求多项式的根:命令格式:roots(p) roots(p)ans =-1.8647 + 1.3584i-1.8647 - 1.3584i0.8647 + 0.6161i0.8647 - 0.6161i问:输入 roots(p1),结果如何?为什么?提示:多项式运算的 MATLAB 命令:polyval 、 conv、deconv 、polyder、roots,输入多项式的系数向量即可。阅读下例程序 p=1 2 0 -5 6; p1=poly2sym(p)p1 =x4+2*x3-5*x+6 factor(p)? Error using = factorN must b

11、e a scalar. factor(p1)ans =x4+2*x3-5*x+6 syms x q=(x+2)5; expand(q)ans =x5+10*x4+40*x3+80*x2+80*x+32注:当多项式用其系数向量表示,factor(p)运行出现错误提示,原因是 factor 命令要求输入数据是标量(scalar)或字符表达式。六、多项式拟合多项式拟合是将给定的数据点采用最小二乘法按多项式形式进行拟合,确定多项式的系数。多项式拟合有命令语句和图形窗口两种方法方法一:多项式拟合命令Polyfit(x,y,n) 功能:采用 n 次多项式来拟合数据 x,y,多项式按降幂排列。例 对下列表格

12、数据进行多项式拟合x -3 -2 -1 0 1 2 3 MATLAB 的初等代数运算 第 21 页y 95 104 110 120 140 165 200 x=-3 -2 -1 0 1 2 3; y=95 104 110 120 140 165 200; polyfit(x,y,2) %x,y 构成的数据点用二阶多项式拟合。ans =2.9167 16.6786 121.7619 poly2sym(ans) %由多项式系数创建多项式ans =35/12*x2+467/28*x+2557/21方法二:图形窗口拟合第一步:画出数据 x,y 的散点图; x=-3 -2 -1 0 1 2 3; y=95 104 110 120 140 165 200; plot(x,y,*r)第二步:在图形窗口单击 ToolsBasic Fitt

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号