资源描述:
《matlab教程符号计算》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第2章符号计算所谓符号计算是指:解算数学表达式、方程不是在离散化的数值点上进行,而是凭借一系列恒等式,数学定理,通过推理和演绎,力求获得解析结果。这种计算建立在数值完全准确表达和推演严格解析的基础之上,因此所得结果是完全准确的。本书之所以把符号计算内容放在第2章,是出于以下考虑:一,相对于MATLAB的数值计算“引擎”和“函数库”而言,符号计算的“引擎”和“函数库”是独立的。二,在相当一些场合,符号计算解算问题的指令和过程,显得比数值计算更自然、更简明。三,大多数理工科的本科学生在学过高等数学和其
2、他专业基础课以后,比较习惯符号计算的解题理念和模式。在编写本章时,作者在充分考虑符号计算独立性的同时,还考虑了章节的自完整性。为此,本章不但全面地阐述符号计算,而且在最后一节还详细叙述了符号计算结果的可视化。这样的安排,将使读者在阅读完本章后,就有可能运用MATLAB的符号计算能力去解决相当一些具体问题。2.1符号对象和符号表达式2.1.1符号对象的创建和衍生一生成符号对象的基本规则二符号数字【例2.1-1】符号(类)数字与数值(类)数字之间的差异。a=pi+sqrt(5)sa=sym('pi+s
3、qrt(5)')Ca=class(a)Csa=class(sa)vpa(sa-a)a=5.3777sa=pi+sqrt(5)Ca=doubleCsa=symans=.138223758410852e-16三符号参数四符号变量【例2.1-2】用符号计算研究方程的解。(1)symsuvwz37Eq=u*z^2+v*z+w;result_1=solve(Eq)%findsym(Eq,1)result_1=-u*z^2-v*zans=w(2)result_2=solve(Eq,z)result_2=1/2
4、/u*(-v+(v^2-4*u*w)^(1/2))1/2/u*(-v-(v^2-4*u*w)^(1/2))【例2.1-3】对独立自由符号变量的自动辨认。(1)symsabxXYk=sym('3');z=sym('c*sqrt(delta)+y*sin(theta)');EXPR=a*z*X+(b*x^2+k)*Y;(2)findsym(EXPR)ans=X,Y,a,b,c,delta,theta,x,y(3)findsym(EXPR,1)ans=x(4)findsym(EXPR,2),findsy
5、m(EXPR,3)ans=x,yans=x,y,theta【例2.1-4】findsym确定自由变量是对整个矩阵进行的。symsabtuvxyA=[a+b*x,sin(t)+u;x*exp(-t),log(y)+v]findsym(A,1)A=[a+b*x,sin(t)+u][x*exp(-t),log(y)+v]ans=x372.1.1符号计算中的算符2.1.2符号计算中的函数指令2.1.3符号对象的识别【例2.1-5】数据对象及其识别指令的使用。(1)cleara=1;b=2;c=3;d=4;
6、Mn=[a,b;c,d]Mc='[a,b;c,d]'Ms=sym(Mc)Mn=1234Mc=[a,b;c,d]Ms=[a,b][c,d](2)SizeMn=size(Mn)SizeMc=size(Mc)SizeMs=size(Ms)SizeMn=22SizeMc=19SizeMs=22(3)CMn=class(Mn)CMc=class(Mc)CMs=class(Ms)CMn=doubleCMc=charCMs=sym(4)isa(Mn,'double')isa(Mc,'char')isa(Ms,'
7、sym')ans=1ans=1ans=1(5)whosMnMcMsNameSizeBytesClassAttributes37Mc1x918charMn2x232doubleMs2x2312sym2.1符号数字及表达式的操作2.1.1数值数字与符号数字之间的转换一数值数字向符号数字的转换二符号数字向双精度数字转换2.1.2符号数字的任意精度计算【例2.2-1】digits,vpa指令的使用。digitsp0=sym('(1+sqrt(5))/2')pr=sym((1+sqrt(5))/2)%pd=
8、sym((1+sqrt(5))/2,'d')%e32r=vpa(abs(p0-pr))e16=vpa(abs(p0-pd),16)e32d=vpa(abs(p0-pd))Digits=32p0=(1+sqrt(5))/2pr=7286977268806824*2^(-52)pd=1.6180339887498949025257388711907e32r=.543211520368251e-16e16=0.e32d=.543211520368251e-162.1.3符号表达式的基本操