二讲matlab符号计算

二讲matlab符号计算

ID:27179429

大小:1.05 MB

页数:127页

时间:2018-12-01

二讲matlab符号计算_第1页
二讲matlab符号计算_第2页
二讲matlab符号计算_第3页
二讲matlab符号计算_第4页
二讲matlab符号计算_第5页
资源描述:

《二讲matlab符号计算》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第二讲Matlab符号计算参考文献:MATLAB程序设计教程李海涛,邓樱编著高等教育出版社,2002所谓符号计算是指在运算时,无须事先对变量赋值,而将所得到结果以标准的符号形式来表示。Matlab本身并没有符号计算功能,MathWorks公司于1993年购买了著名的符号数学软件Maple的使用权,并利用Maple已有的函数库,开发了符号数学工具箱。符号运算与数值运算的区别:数值运算中必须先对变量赋值,然后才能参与运算。符号运算无须事先对独立变量赋值,运算结果以标准的符号形式表达。符号计算是精确计算,可以获得任意精度的解;SymbolicMa

2、thToolbox——符号运算工具包通过调用Maple软件实现符号计算的。Maple软件——主要功能是符号运算,它占据符号软件的主导地位。符号运算的特点:运算对象可以是没赋值的符号变量。符号计算定义在符号变量的基础上,符号表达式计算前必须定义符号变量;Matlab的符号数学工具箱的主要功能包括:符号表达式的创建、符号矩阵的运算、符号表达式的化简、符号微积分、符号方程(主要指代数方程与常微分方程)的求解、符号函数绘图等。符号计算的计算速度较慢;符号计算的运算符和基本数学函数与数值计算中的运算符和基本数学函数几乎完全相同。一、符号对象的创建(一

3、)创建符号变量和表达式参与符号运算的对象可以是符号变量、符号表达式或符号矩阵。符号变量要先定义,后引用。Matlab提供了两个建立符号变量的函数:sym和syms,两个函数的用法不同。sym函数sym函数的主要功能是创建单个符号变量,以便进行符号运算,也可以用于创建符号表达式或符号矩阵。用sym函数创建符号变量的一般格式为:符号量名=sym('符号字符串')符号字符串可以是常量、变量、函数、表达式或方程。如:f1='ax^2+bx+c'——二次三项式f2='ax^2+bx+c=0'——方程f3='Dy+y^2=1'——微分方程符号表

4、达式或符号方程可以赋给符号变量,以后调用方便;也可以不赋给符号变量直接参与运算a=sym('a');b=sym('b');c=sym('c');d=sym('d');%定义4个符号变量w=10;x=5;y=-8;z=11;%定义4个数值变量A=[a,b;c,d]%建立符号矩阵AB=[w,x;y,z]%建立数值矩阵Bdet(A)%计算符号矩阵A的行列式det(B)%计算数值矩阵B的行列式使用符号变(常)量进行代数运算和数值变(常)量进行的运算是不同的。例1考察符号变量和数值变量的差别。例2定义一个符号函数fxy=(a*x^2+b*y^2)/c

5、^2,分别求该函数对x、y的导数和对x的积分。a=sym('a');b=sym('b');c=sym('c');%定义符号变量x=sym('x');y=sym('y');fxy=(a*x^2+b*y^2)/c^2;%生成符号函数diff(fxy,x)%符号函数fxy对x求导数diff(fxy,y)%符号函数fxy对y求导数int(fxy,x)%符号函数fxy对x求积分ans=2*a*x/c^2ans=2*b*y/c^2ans=1/c^2*(1/3*a*x^3+b*y^2*x)例3比较符号常数与数值在代数运算时的差别。pi1=sym('pi'

6、);k1=sym('8');%定义符号变量k2=sym('2');k3=sym('3');pi2=pi;r1=8;r2=2;r3=3;%定义数值变量sin(pi1/3)%计算符号表达式值sin(pi2/3)%计算数值表达式值sqrt(k1)%计算符号表达式值sqrt(r1)%计算数值表达式值sqrt(k3+sqrt(k2))%计算符号表达式值sqrt(r3+sqrt(r2))%计算数值表达式值ans=1/2*3^(1/2)ans=0.8660ans=2*2^(1/2)ans=2.8284ans=(3+2^(1/2))^(1/2)ans=2.

7、1010符号表达式由符号变量、函数、算术运算符等组成。符号表达式的书写格式与数值表达式相同。利用单引号来生成;用sym函数建立;使用已定义的符号变量组成。建立符号表达式的方法:例4已知一复数表达式z=x+i*y,试求其共轭复数,并求该表达式与其共轭复数乘积的多项式。为了使乘积表达式x^2+y^2非负,这里,把变量x和y定义为实数。>>x=sym('x','real');y=sym('x','real');若要去掉'x'的属性,可以使用下面语句>>x=sym('x','unreal')将'x'创建为纯格式的符号变量。z=x+i*y;%定义复数

8、表达式conj(z);%求共轭复数expand(z*conj(z))%求表达式与其共轭复数乘积的多项式ans=x^2+y^2syms函数函数sym一次只能定义一个符号变量,使用不

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

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

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