MATLAB第二讲数值计算和符号计算.ppt
《MATLAB第二讲数值计算和符号计算.ppt》由会员分享,可在线阅读,更多相关《MATLAB第二讲数值计算和符号计算.ppt(40页珍藏版)》请在三一办公上搜索。
1、Matlab基础应用,1,第二讲 数值计算和符号运算,Matlab基础应用,2,1.数值计算,1.1 矩阵和数组基础创建矩阵元素标识矩阵操作矩阵函数1.2 矩阵和数组的计算,Matlab基础应用,3,1.3 多项式运算,MATLAB语言把多项式表达成一个行向量,该向量中的元素是按降幂排列多项式各项系数的,如果缺某次幂项,则该次幂项系数为。f(x)=anxn+an-1xn-1+a1x+a0 用行向量 p=an an-1 a1 a0表示。,多项式 行向量,Matlab基础应用,4,可用polyval函数,计算多项式在变量为特定值的结果。,1.3.1 多项式求值,例2:计算x=0:0.5:3时,p(
2、x)=x3+21x2+20 x值。,解:p1=1 21 20 0;x=0:0.5:3;polyval(p1,x)0 15.3750 42.0000 80.6250 132.0000 196.8750 276.0000,Matlab基础应用,5,多项式求根-求方程的解,例3:p(x)=x3-6x2-72x-27,在MATLAB利用函数:roots,解:p=1-6-72-27r=roots(p)r=12.1229-5.7345-0.3884,Matlab基础应用,6,1.3.3 部分分式展开,利用residue函数来实现部分分式展开。,语法:r,p,k=residue(B,A)其中:B,A分别为分
3、子、分母多项式系数行向量;r为r1,rn留数行向量;p为p1pn极点行向量;k为直项行向量。,Matlab基础应用,7,1.3.4 多项式乘除运算,多项式的乘法语法:p=conv(p1,p2)说明:p是多项式p1和p2的乘积多项式。多项式的除法语法:q,r=deconv(p1,p2)说明:p1被p2除,商为多项式q,余数式为r。,Matlab基础应用,8,1.3.4 多项式乘除运算(续),例4:a(x)=x2+2x+3;b(x)=4x2+5x;求c=a(x)*b(x)。解:a=1 2 3;b=4 5 0;c=conv(a,b)c=4 13 22 15 0d,r=deconv(c,a)d=4 5
4、 0r=0 0 0 0 0,Matlab基础应用,9,(1)字符串用字符数组来存储,以单引号 来界定。(2)常见的字符串函数:length(str):计算字符串的长度;double(str):查看字符串的ASCII码;char(x):将ASCII码转换成字符串形式;strcmp(x,y):比较两字符串是否相同;strcat(s1,s2,):字符串级连函数;findstr(x,x1):查找x中是否有x1;(3)执行字符串:eval(str)命令 例1:str1=a=2*3;eval(str1)a=6,1.4 字符串,Matlab基础应用,10,(1)元胞数组的基本单元是元胞,每个元胞可存放不同类
5、型(矩阵、数组、字符串等)的数据,以 来界定。(2)元胞数组的创建:方法1:直接创建 如:A=THIS,3 4;ones(3),ONE,TWO方法2:由各元胞创建 如:A(1,1)=THIS A(1,2)=3 4 A(2,1)=ones(3)A(2,2)=ONE,TWO(3)元胞数组元素内容的获取:X=A2,1 X=1 1 1;1 1 1;1 1 1,1.5 元胞数组,Matlab基础应用,11,(1)结构数组的基本组成是结构,每个结构都包含某一对象的多个域,以.来标识域。(2)结构数组的创建:方法1:TU(1)=struct(name,曲线1,color,red,)方法2:TU(1).nam
6、e=曲线1;TU(1).color=red TU(1).shape=sin;TU(1).position=0 pi TU(2).name=曲线2;TU(2).color=blue TU(2).shape=cos;TU(2).position=0 2*pi(3)结构数组元素内容的获取:用.号来获取 X=TU(2).shape X=cos,1.6 结构数组,Matlab基础应用,12,1.7 数据分析,遵循的原则:(1)如果输入是向量,则按整个向量进行 计算。(2)如果输入的是矩阵,则按列进行运算。,因此:一定要将需要分析的数据按列进行分类。若已有的矩阵是按行进行分类的,可用矩阵的旋转使矩阵变成按
7、列进行分类,Matlab基础应用,13,数据统计和相关分析,Matlab基础应用,14,1.7.2 差分与积分,Matlab基础应用,15,1.7.3 卷积和快速傅立叶变换-离散序列,卷积,Conv:计算向量的卷积。conv2:计算二维(矩阵或二维数组)卷积。deconv:解卷积运算。,快速傅立叶变换,fft:一维快速傅立叶变换。ifft:一维快速傅立叶逆变换。,Matlab基础应用,16,课程导入,求半径为5的圆的面积,数值运算:r=5 s=pi*r2 s=78.5398,如果要求求解的精度保留到小数点后10位,怎样求解呢?,符号运算是数值运算的扩展,为了得到更高精度的运算结果,符号运算:s
8、yms s r s=pi*r2 r=5 s=vpa(subs(s),32)s=78.5398163397448,2 符号运算,Matlab基础应用,17,2.1 符号对象的建立,2.1.1 创建符号常量(sym是symbolic缩写)语法:sym(常量),例1:创建数值常量和符号常量a1=2*sqrt(5)+pi%数值常量a2=sym(2*sqrt(5)+pi)%符号常量,符号对象:是一种数据结构,用来存储代表符号的字符串,包括符号常量、符号变量和符号表达式,符号运算的结果也都是符号对象。,Matlab基础应用,18,(1)使用sym命令创建符号变量:sym(arg,参数)%参数设置数学特性,
9、可为positive,real,unreal,可省略;符号表达式:sym(表达式)注意:符号对象必须用单引号括起来MATLAB才能识别。,例2:f=sym(sin(x)+5*x)f 符号表达式名 sin(x)+5*x 符号表达式 符号标识,2.1.2 创建符号变量和表达式,注意:常数与符号变量的相乘不能省*,(2)使用syms命令创建:一个或多个符号变量的创建 syms(arg1,arg2,参数)syms arg1 arg2 参数,Matlab基础应用,19,例3:f1=sym(a*x2+b*x+c)%方法一 whos Name Size Bytes Class f1 1x1 146 sym
10、objectGrand total is 12 elements using 146 bytessyms a b c x%方法二 f2=a*x2+b*x+c whosName Size Bytes Class a 1x1 126 sym object b 1x1 126 sym object c 1x1 126 sym object f2 1x1 146 sym object x 1x1 126 sym objectGrand total is 20 elements using 650 bytes,注意:方法一只创建了符号表达式,没有创建符号变量;而方法二既创建了符号表达式,又创建符号变量.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 第二 数值 计算 符号

链接地址:https://www.31ppt.com/p-6512068.html