MATLAB中的符号运算.ppt

MATLAB中的符号运算.ppt

ID:53001221

大小:247.50 KB

页数:61页

时间:2020-04-15

MATLAB中的符号运算.ppt_第1页
MATLAB中的符号运算.ppt_第2页
MATLAB中的符号运算.ppt_第3页
MATLAB中的符号运算.ppt_第4页
MATLAB中的符号运算.ppt_第5页
资源描述:

《MATLAB中的符号运算.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、MATLAB中的符号运算2004.8.4MATLAB所具有的符号数学工具箱与其它所有工具不同,它适用于广泛的用途,而不是针对一些特殊专业或专业分支。另外,MATLAB符号数学工具箱与其它的工具箱区别还因为它使用字符串来进行符号分析,而不是基于数组的数值分析。符号数学工具箱是操作和解决符号表达式的符号数学工具箱(函数)集合,有复合、简化、微分、积分以及求解代数方程和微分方程的工具。另外还有一些用于线性代数的工具,求解逆、行列式、正则型式的精确结果,找出符号矩阵的特征值而无由数值计算引入的误差。工具箱还支持可变精度运算,即支持符号计算并能以指定的精度返回结果。符号数学工具箱中的工具是建

2、立在功能强大的Maple之上。它最初是由加拿大的滑铁卢(Waterloo)大学开发的。当要求MATLAB进行符号运算时,它就请求Maple去计算并将结果返回到MATLAB命令窗口。因此,在MATLAB中的符号运算是MATLAB处理数字的自然扩展。符号表达式是代表数字、函数、算子和变量的MATLAB字符串,或字符串数组。不要求变量有预先确定的值,符号方程式是含有等号的符号表达式。符号算术是使用已知的规则和给定符号恒等式求解这些符号方程的实践,它与代数和微积分所学到的求解方法完全一样。符号矩阵是数组,其元素是符号表达式。符号表达式'1/(2*x^n)'y='1/sqrt(2*x)''c

3、os(x^2)-sin(2*x)'M=sym('[a,b;c,d]')符号表达式MATLAB表达式f=int('x^3/sqrt(1-x)','a','b')MATLAB符号函数可用多种方法来操作这些表达式diff('cos(x)')ans=-sin(x)%differentiatecos(x)withrespecttoxM=sym('[a,b;c,d]')M=[a,b][c,d]%createasymbolicmatrixMdeterm(M)ans=a*d-b*c%findthedeterminantofthesymbolicmatrix上面的第一个例子的符号表达式是用单引号以隐

4、含方式定义的。它告诉MATLAB'cos(x)'是一个字符串并说明diff('cosx')是一个符号表达式而不是数字表达式;而在第二个例子中,用函数sym显式地告诉MATLABM=sym('[a,b;c,d]')是一符号表达式。在MATLAB可以自己确定变量类型的场合下,通常不要求显式函数sym。符号变量当字符表达式中含有多于一个的变量时,只有一个变量是独立变量。如果不告诉MATLAB哪一个变量是独立变量,MATLAB将基于以下规则选择一个:在符号表达式中缺省的独立变量是唯一的,除去i和j的小写字母,不是单词的一部分。如果没有这种字母,就选择x作为独立变量。如字符不是唯一的,就选择

5、在字母顺序中最接近x的字母。如果有相连的字母,就选择在字母表中较后的那一个。缺省的独立变量,有时称作自由变量,在表达式'1/(5+cos(x))'中是'x';在'3*y+z'中是'y';在'a+sin(t)'是't'。在表式'sin(pi/4)-cos(3/5)'中自由符号变量是'x',因为此式是一个符号常数无符号变量。可利用函数symvar询问MATLAB在符号表达式中哪一个变量它认为是独立变量。symvar('a*x+y*)%findthedefaultsymbolicvariableans=xsymvar('a*t+s/(u+3)')%uistheclosestto'x'an

6、s=usymvar('sin(omega)')%'omega'isnotasingleecharacter。ans=xsymvar('3*i+4*j')%iandjareequeltosqrt(-1)ans=xsymvar('y+3*s','t')ans=s%findthevariableclosesttotratherthanx如果利用规则symvar不能找到一个缺省独立变量,它便假定无独立变量并返回x。这一结论对含有由多个字母组成的变量,如:alpha或s2的表达式,或不含变量的符号常数均成立。如果需要,绝大多数命令都使用用户选项以指定独立变量。diff('x^n')%diff

7、erentiatewithrespecttothedefaultvariable'xans=x^n*n/xdiff('x^n','n')%differentiatex^nwithrespectto'n'ans=x^n*log(x)diff('sin(omega)')%differentiateusingthedefaultvariables(x)ans=0diff('sin(omega)','omega')%specifytheindependentvariablea

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。