- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 符号计算数,,,,计算有数值计算与符号计算之分。这两者的根本区别是:数值计算的表达式、矩阵变量中不允许有未定义的自由变量,而符号计算可以含有未定义的符号变量。对于一般的程序设计软件如C,C++等语言实现数值计算还可以,但是实现符号计算并不是一件容易的事。而Matlab自带有符号工具箱Symbolic Math Tooibox,再借助于软件Maple,就具有了强大的符号运算功能。在数值计算(包括输入、输出及中间变量在内的)过程中,所运作的变量都是被赋了值的数值变量。而在符号计算的整个过程中,所运作的是符号变量。注意:在符号计算中所出现的数字也都是当作符号处理的。 符号变量的创建在Matlab的数据类型中,字符型与符号型是两种重要而又容易混淆的数据类型。一定要注意这两种类型的不同之处。在Matlab中利用sym命令来创建符号变量,sym的使用格式为:S=sym(‘A’) 定义单个符号变量Ssyms a b c …. 定义多个符号变量a,b,c…syms命令的使用要比sym简便,它一次可以定义多个符号变量,而且格式简练。因此一般用syms 来创建符号变量。注意各符号变量之间是空格。例1:比较字符型与符号型s=123456↙s =123456S1=sym(123456)↙S1 =123456whos↙ Name Size Bytes Class S1 1x1 136 sym object s 1x6 12 char array说明:从例1可以看到符号变量的保存是不同于矩阵形式的单独保存方式。符号表达式的创建创建符号表达式的目的就是把表达式赋值给一符号变量,方便表达式的使用。创建符号表达式由两种方法。直接创建例2:fn=sym(2*x^2+b*x+6)↙fn =2*x^2+b*x+6b↙?? Undefined function or variable b说明:符号表达式2*x^2+b*x+6赋给了符号变量fn,但对于符号表达式中的变量x,b并未创建,因此系统并不认识符号b.间接创建在创建符号表达式之前,先把符号表达式中的所有变量定义为符号变量,然后直接创建表达式。例3:syms a b c x↙f=a*x^2+b*x-c↙f =a*x^2+b*x-cf+c↙a*x^2+b*x符号方程的创建符号方程与符号表达式不同,表达式只是一个由数字和变量组成的代数式,而方程则是由表达式和等号组成的等式。符号方程的创建方法只有一种。equ=sym(‘eqution’)例4:eq1=sym(‘5*x=6+a’)↙ eq1 =5*x=6+aeq2=sym(‘x^2+y^2+z^2=1’)↙ eq2 =x^2+y^2+z^2=1符号矩阵的创建直接创建利用sym 命令,矩阵元素可以是任何的符号变量、符号表达式及方程,且元素的长度可以不同。例5:A=sym([sin(x),x+y=2,a;2,6+cos(tan(x)),1/x;abc,y^2=x,x])↙A =[ sin(x), x+y=2, a][ 2, 6+cos(tan(x)), 1/x][ abc, y^2=x, x]间接创建在创建符号矩阵之前,先把符号矩阵的所有变量定义为符号变量,而在创建符号矩阵时,只需按创建普通矩阵的格式输入即可完成。例6:创建例5 的矩阵A.解:Matlab命令: syms x y a abc↙e1=sym(x+y=2);↙e2=sym(y^2=x);↙A=[sin(x),e1,a;2,6+cos(tan(x)),1/x;abc,y^2,x]↙A =[ sin(x), x+y=2, a][ 2, 6+cos(tan(x)), 1/x][ abc, y^2, x]由数值矩阵转化为符号矩阵将一个数值矩阵M转化为符号矩阵S的命令为:S=sym(M)例7:M=[1,2;3,4];↙S=sym(M)↙S = [ 1, 2][ 3, 4]whos↙Name Size Bytes ClassM 2x2 32 double arrayS 2x2 408 sym object数值变量、
文档评论(0)