第11章MATLAB71符号计算

上传人:cl****1 文档编号:569306437 上传时间:2024-07-28 格式:PPT 页数:34 大小:538.50KB
返回 下载 相关 举报
第11章MATLAB71符号计算_第1页
第1页 / 共34页
第11章MATLAB71符号计算_第2页
第2页 / 共34页
第11章MATLAB71符号计算_第3页
第3页 / 共34页
第11章MATLAB71符号计算_第4页
第4页 / 共34页
第11章MATLAB71符号计算_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《第11章MATLAB71符号计算》由会员分享,可在线阅读,更多相关《第11章MATLAB71符号计算(34页珍藏版)》请在金锄头文库上搜索。

1、技术凝聚实力技术凝聚实力专业创新出版专业创新出版第11章 符号计算l与一般的数值计算不同,符号计算是对字符串符号进行分析和运算,为了便于理解,读者可以将符号计算看作“由计算机实现的数学公式推导”。进行符号计算时,MATLAB负责将计算请求提交给其内置的MAPLE组件并返回MAPLE的计算结果。MATLAB的符号计算历经多次的改进和完善,其功能已经非常强大,尤其是在大规模的简单公式推导、逻辑推导等应用中有重要应用。本章介绍的内容如下。l符合对象的创建 符号函数l符号对象的复合和化简 符号对象的运算l符号矩阵l符号微积分l符号方程求解伸贪藤册淮国院痈漱瘟柔串柏琐胃纫搽珍缆继幂芯槛饺罐拒烛贴苏惮援榨

2、第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.1 符号类型与数值类型l符号对象(Symbolic Objet)是MATLAB符号工具箱中定义的一种新的数据类型。与一般的简单数值类型(如logical、int、float、double等)不同,符号对象是一种保存了符号字符串表示的复杂数据结构。本节主要讨论符号类型与普通数值类型的差别。卿蝇奖呀始引禹血购霜育撇楚别赋坡惕唾倍偿啸粥颁豺亭榆骂顿垛绷怠程第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.2 符号对象

3、及其创建lMATLAB符号工具箱定义的数据类型符号对象(Symbolic Object),是一种存储了符号字符串表示的复杂数据结构。MATLAB利用符号对象表示符号变量、符号表达式、符号函数、符号矩阵,本节介绍符号变量、符号表达式的创建,至于符号函数和符号矩阵,将分别在11.3、11.5节进行详细介绍。拖韩扯并奋火棒睹园幢槛郁痊晾峰造中昭龙闲烛令啪呛胚咙喻淀扰柠湘刑第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.2.1 创建符号变量lsym函数可用于创建符号常量和变量,其调用格式为:lsym_variable = sym(s

4、ym_expression)l该指令创建符号变量(或常量)sym_variable,其中sym_expression为符号变量的字符串表示。如果sym_expression为常数(例如pi、1、2.01等),则函数返回符号常量;如果sym_expression是符合命名规则的字符串(即该字符串只能包含数字、英文字母和下画线,且不能以数字开头),则函数返回符号变量。滔友辙渣控杆莽窘虐幸践预粳鸳令痰饼搐困襟退墙题接按鳞占蛾邱俄婉闹第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.2.2 创建符号表达式l符号表达式是符号变量或常量的

5、组合,也可以将符号变量和符号常量认为是符号表达式。符号表达式的创建,依然使用函数sym,其调用格式为:lsym_variable = sym(sym_expression)l这里的输入字符串参数sym_expression与11.2.1中有所不同,它是由多个子字符串通过数值运算符组合而成的,每个子字符串或者是符合命名规则的字符串或者是数值常量。也可以事先利用sym或syms创建符号变量和常量,然后通过数值运算符、支持符号计算的函数等将这些符号变量或常量组合起来构成符号表达式。引老挚犹养橡举竭吓狈咯荤芽林匝掉闸龄火漆键稀木例南绷谢逢剔瘦泳趴第11章MATLAB71符号计算第11章MATLAB71

6、符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.2.3 符号对象与数值的转换lMATLAB符号计算工具箱提供如下三类运算操作:lNumberic,即MATLAB浮点运算;lRational,即Maple符号运算;lVPA,即Maple精度可变运算。l浮点运算是三者中运算速度最快、内存使用最少的一种,但其结果的精度也较低,format可以控制输出结果的位数,但其内部表示仍然是8字节浮点表示,也就是说format不能改变结果的精度。符号运算的结果是精确、无近似的,但运算速度慢、消耗内存最多。VPA是浮点运算与符号运算的折中,用户可以通过函数digits控制计算结果的精度,默认情况下d

7、igits = 32。硝岳囤窥新匀己貉蕴鄙秒侈艳佰扶孝撂官卡婿川潘捐蒙蜡腿含瑶泄靡氰析第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.3 符号函数l显而易见,符号函数与通常的数值函数有很大的不同。本节从MATLAB中符号函数的创建开始,分别介绍了符号函数的复合、反函数等内容,然后给出了一些在理论和实际中具有重要应用的符号函数。碰纂鞭错虱记很花敦福杜徒确檄羌剂价蕴屋跨兵苇鲜滩智尽喷童多疙引姑第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.3.1 创建符号函数

8、l可以通过下面两种方法创建符号函数:l符号表达式;lM文件。l利用符号表达式创建符号函数的方法在例11.4中已经介绍,这种方法适合于创建一些比较简单的函数,对于比较复杂的符号函数的创建,应该利用M文件。悬齿惋加竿锥融牟馁恫站姓隅哗林鹰唐碱建庐错效蜗旁叮脊啸佬队锡诺窜第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.3.2 复合函数l已知函数、,复合函数定义为。MATLAB符号计算工具箱提供函数compose用于符号函数复合,其调用格式为:lcompose(f,g)lcompose(f,g,z)lcompose(f,g,x,z)

9、lcompose(f,g,x,y,z)蛆诺会咽耽超溺心哥云痕皋组熟纪若贪庙志何夫挫纸着团详汇菌腆雇哎掂第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.3.3 反函数lMATLAB符号工具箱的函数finverse用于计算函数的反函数,其调用格式为:lg = finverse(f)lg = finverse(f,v)l其中f为符号表达式,该函数求f关于v的反函数,如果未指定v,那么v = findsym(f)。莱览湖吏蒙蛊娜肃泄谗祟恰幸敞酬铆褪块愚垫拄或名良分淑执渍惹沛恿秀第11章MATLAB71符号计算第11章MATLAB71

10、符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.3.4 特殊符号函数lMATLAB符号工具箱对一些重要的数学函数提供了支持,蜘失镑习蠢猪佩娘踌友靛堆马段雌掩沧耘幻汗衔绍罕搀鱼施陆嵌债鹊谓蹭第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.4 符号表达式的复合和化简l符号表达式的显示、展开、分解、化简等是符号运算的重要内容,MATLAB符号工具箱对这些内容提供了强大的支持。本节将详细介绍MATLAB符号工具相中符号表达式的显示、展开、分解、替换、化简等操作。美旺协配袍洼骋夯位乔顽堕总庐桅猛瘤调联茬儿骑迄登涌挛梯租伏

11、织伺滞第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.4.1 显示符号表达式lMATLAB显示符号表达式时,默认的方式是MATLAB式的显示,例如在MATLAB命令窗口输入以下代码。l f = a*x2 + b*x + cl运行结果如下。lf =la*x2+b*x+c倒赋苛肄葛轨肪伐钮荷洽坞涨退吊查砖叹往庇马候勘乞霄溶涤耀萌蝴惹目第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.4.2 展开、分解及化简符号表达式l对数学表达式的展开、分解、化简是学习数学和应

12、用数学中经常要做的工作,MATLAB符号工具箱这些工作提供了强大的支持,下面列出了一些相关的函数及其使用方法。l函数collect用于同类项合并,其调用格式为:lcollect(f, s)lcollect(f)lcollect(f, s)将符号表达式f看作符号变量s的多项式(如果未指定s,则默认s为findsym(f, 1)),对具有相同阶数的项进行合并。贤雪润钾颁蛛熙胯因史簧墒官锌帅乍践厨教乎牵惹迁矩靶虫凸绷涯摇昌赠第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.4.3 符号表达式替换l符号表达式的替换有两种,一是利用符号

13、变量或符号表达式替换目标符号表达式中的符号变量(包括符号常量),利用函数subs实现;二是用符号变量替代目标符号表达式中的某个子符号表达式,利用函数subexpr实现。函数subs的一般调用格式为:lR = subs(S) lR = subs(S, new)lR = subs(S,old,new)萧庙刑榔乳晒卸耶苟及殖饯早雏雀掩脆柔仍显斥蝶汝咆匿晤随重剖鸳臼下第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.5 符号矩阵l符号矩阵是数值矩阵的扩展,符号矩阵的每个元素为符号表达式。与数值矩阵一样,符号矩阵也有代数运算、逻辑运算等

14、;还可以求符号矩阵的奇异值,对符号进行奇异值分解。对于符号方阵,可以求行列式、特征值;符号方阵可逆时,还可以求符号方阵的逆。本节涉及的许多符号矩阵运算与数值矩阵相同,读者在学习本节内容时可以参考第7章。眨淡炔赔络埠材垃感卖芒漳蹋蛋摄忿蚤必善拙阀绝殊挪瓣荫遵吟撮磷材茬第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.5.1 创建符号矩阵lMATLAB符号工具箱中没有提供专门用于创建符号矩阵的函数,用户可以通过以下三种方式创建符号矩阵:l直接输入符号矩阵的各个元素符号表达式;l利用sym函数将数值矩阵转化为符号矩阵,这种方法只能创

15、建符号常量矩阵;l简单符号矩阵的组合创建复杂符号矩阵。迫炯筋妙努糖绳獭鸣凋铱漱营抿制红佰竟椒殉唬津柑韩踩倡共臃蚊糠桔椰第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.5.2 符号矩阵的代数运算l同数值矩阵一样,符号矩阵也能进行加、减、乘、除四则运算,并且具有与数值矩阵几乎相同的运算规则,只是矩阵元素由数值变成了符号表达式。氧浚仁斯殆骑诅鲜涯性及祁铜柠奄疫洞熬哺蜜皖敖圈蝴曲利芯嗅街幌珍佬第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.5.3 符号矩阵的逻辑运

16、算lMATLAB符号工具箱对符号的逻辑运算支持很有限,仅支持=和=。l符号的逻辑运算。 l运行结果如下。l? Function gt is not defined for values of class sym.lError in = gt at 16lbuiltin(gt, varargin:);出赎衔孔颖形倒膏矣眶孵荫靠窒筑刷佬搞客藩穷草每脓聚惹揭疾察克聂甚第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.5.4 符号矩阵的行列式l符号矩阵的行列式与数值矩阵的行列式具有相同的定义,只是符号矩阵的行列式为符号函数。同样,行列

17、式仅对符号方阵才有意义。lMATLAB利用同名函数det计算符号矩阵的行列式,该函数在符号工具箱中被重载。l符号矩阵的行列式。l矩阵 被称为单位旋转矩阵,试求该矩阵的行列式。 碾齿毙浩净济汛晶硝悼竞梭筏寿虫氢繁点辊瘪镜宝跟攫辆寿徒亩创隆燕价第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.5.5 符号矩阵的逆l对阶符号方阵,满足的符号方阵称为的逆,记为。其中为单位符号方阵,对角线上元素为符号常量,其余为0。lMATLAB符号工具箱提供同名函数inv用于计算符号方阵的逆,这里的inv在符号工具箱中被重载。下面是符号矩阵求逆应用的

18、例子。僳掇厕阳壹桩冠史隧堕猖蒸述扦粒班匀抠香侮瞄退侥跋诺激挠柒驶庄搽琉第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.5.6 符号矩阵的秩l符号矩阵秩的含义与数值矩阵相似,对符号矩阵,取其任意行列得到的阶子式, 的秩定义为使“至少有一个阶子式的行列式不为0”的最大,即所有的阶子式行列式为0,且至少有一个阶子式行列式不为0。lMATLAB提供同名函数rank计算符号矩阵的秩,这里的rank在符号工具箱中被重载。唤轨功慢迸唤合苹冤枚帖睹裔障腾题襟钉党何瘟赚焊帘弯狐即悼刁照碟荷第11章MATLAB71符号计算第11章MATLAB7

19、1符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.5.7 符号矩阵的特征分解l特征值反映了符号矩阵的一些重要的性质,对符号矩阵特征值的分析在信号处理、自动控制中有重要的应用。符号方阵的特征值是满足的,其中为单位符号矩阵。由于即为A的特征多项式,所以的特征值即为特征多项式的根。回忆第10章中利用函数poly求数值矩阵的特征多项式,事实上,在符号工具箱中该函数被重载,利用poly(A)可以得到符号方阵的特征多项式,对特征多项式求根:lsolve(poly(A)守峙窖点瑶侣证篡虹锡炬楷宛庸恒卷仓逻互训朴到完惊谓慌芳缠凤饰若镰第11章MATLAB71符号计算第11章MATLAB71符号计

20、算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.5.8 符号矩阵的SVD分解l关于符号矩阵SVD分解的相关概念,可以参考第7章数值矩阵SVD分解,这里不再赘述。需要强调的是,MATLAB符号工具箱仅支持常量符号矩阵(元素为符号常量的符号矩阵)的SVD分解,这其中的原因可能是对一般的符号矩阵来说,SVD分解过于复杂而变得不可用。lMATLAB中利用同名函数svd对符号矩阵进行SVD分解,其一般的调用格式为:lU,S,V = svd(A)蛇黄扑酱栽理权岿秒命利乳囊滤柯轻础狮名沤蜘幂痈将裸钻客袜毖鹰尊性第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专

21、业创新出版专业创新出版11.6 符号微积分l第7章已经介绍了数值微积分,数值微积分的适用范围广泛,但对问题的描述一般是近似的,而符号微积分可能得到问题的精确描述,因此在条件允许的情况下利用符号微积分解决理论和实际问题是一个很好的选择。本节内容包括符号的极限、微分、积分、Taylor级数以及级数求和等内容。皱特澜劣撼熬命痈嘎纵捐卉积秉参绩壶睡佩水禾瞥虑阀奢衍赢烦哩忌和玛第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.6.1 极限l极限是当变量无限接近特定值时函数的值,例如,一元函数的导数的定义为下面的极限:。MATLAB符号工

22、具箱利用函数limit计算符号极限,喻舱诲烫蜀丽珐厄消饺舌翻挝趟拦谊诅荚拒硝漳证毯傲允山单荡枉徐案逼第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.6.2 微分踪郧羡陌匪霉摊牢妹劈日竖诗猩妖俞街报矩萍胀掂乞米目驾台先做芜楔匠第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.6.3 积分l函数积分是微分的反运算,对符号函数,的积分是使的,用 表示。同diff相似,如果为多变量符号表达式,用户应该指定对某个自变量求积分,即F = int(f, v);如果未指定,

23、则v设定为由函数fingsym(f, 1)决定的默认符号变量。旗窄纯呆细悲咙筷榷匝识指羡雌氧灭跌寸彰虏啡姨避住泣沧俄睦厌轿瑰掺第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.6.4 Taylor展开铣靶臆迅捂几垦赴瑟序阳丝篱愿褒滞钧孙晌爹奠猩暮挚卤椰猿斌泥椽藤龟第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.6.5 级数求和巷尤雅暖煮庭哺循匈橡碉票造贱浚挂扦蔬吭猫赦盯隆泻饮猾信竖轰膜池嚣第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝

24、聚实力技术凝聚实力专业创新出版专业创新出版11.7 符号方程求解l方程求解在数学理论研究、实际应用中都是一类非常重要的问题,也是符号运算关注的一个主要内容。MATLAB符号工具箱对符号方程求解提供了强大的支持。本节主要介绍一般代数方程、线性代数方程组、常微分方程的符号求解。实陇前喂粹飞收迢抓城瞳瞬裤擂彼唉缘痉砰梳袱艾范恒柏保妹冈暮术为皋第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.7.1 一般代数方程水奶肺慷壳糕粗隘菱仕傈普邦坦撮摘辛隶添囊疙嫂堆六貉娄灵逛曲履潍促第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.7.2 线性代数方程组陋娱碟邻翻官酵牢块渍简胜淬妈井为衰去蛇峡仇泳泡开泣座狄毁琉适绵氦第11章MATLAB71符号计算第11章MATLAB71符号计算技术凝聚实力技术凝聚实力专业创新出版专业创新出版11.7.3 符号常微分方程井踊衣忆诌奶卓盟济概堕直廷汝奥哑丘掌瞳钩垂疤帮全酱但埋淤朵硼围腾第11章MATLAB71符号计算第11章MATLAB71符号计算

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

最新文档


当前位置:首页 > 资格认证/考试 > 自考

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