matlab06符号计算.ppt
《matlab06符号计算.ppt》由会员分享,可在线阅读,更多相关《matlab06符号计算.ppt(35页珍藏版)》请在三一办公上搜索。
1、第6讲 MATLAB的符号计算,所谓符号计算是指在运算时,无须事先对变量赋值,而将所得到结果以标准的符号形式来表示。MathWorks公司以Maple的内核作为符号计算引擎(Engine),依赖Maple已有的函数库,开发了实现符号计算的两个工具箱:基本符号工具箱和扩展符号工具箱。,一、符号计算基础,一、符号计算基础,参与符号运算的对象可以是符号变量、符号表达式或符号矩阵。符号变量要先定义,后引用。可以用sym函数、syms函数将运算量定义为符号型数据。引用符号运算函数时,用户可以指定函数执行过程中的变量参数;若用户没有指定变量参数,则使用findsym函数默认的变量作为函数的变量参数。,(一
2、)定义符号变量,其目的是将x创建为符号变量,以x作为输出变量名。每次调用该函数,可以定义一个符号变量。,一、符号计算基础,(一)定义符号变量,1、sym函数,sym函数的主要功能是创建符号变量,以便进行符号运算,也可以用于创建符号表达式或符号矩阵。用sym函数创建符号变量的一般格式为:,x=sym(x),【例1】作符号计算:a,b,x,y均为符号运算量。在符号运算前,应先将a,b,x,y定义为符号运算量,一、符号计算基础,(一)定义符号变量,a=sym(a);%定义a为符号运算量,输出变量名为ab=sym(b);x=sym(x);y=sym(y);x,y=solve(a*x-b*y-1,a*x
3、+b*y-5,x,y)%以a,b为符号常数,x,y为符号变量,一、符号计算基础,(一)定义符号变量,即可得到方程组的解:x=3/ay=2/b,为了使乘积表达式x2+y2非负,这里,把变量x和y定义为实数。x=sym(x,real);y=sym(y,real);,一、符号计算基础,(一)定义符号变量,【例2】已知一复数表达式 z=x+i*y,试求其共轭复数,并求该表达式与其共轭复数乘积的多项式。,z=x+i*y;%定义复数表达式conj(z);%求共轭复数expand(z*conj(z)%求表达式与其共轭复数乘积的多项式ans=x2+y2若要去掉x的属性,可以使用下面语句 x=sym(x,unr
4、eal)将x创建为纯格式的符号变量。,一、符号计算基础,(一)定义符号变量,syms函数的功能与sym函数类似。syms函数可以在一个语句中同时定义多个符号变量,其一般格式为:syms arg1 arg2 argN 用于将arg1,arg2,argN等符号创建为符号型数据。,一、符号计算基础,(一)定义符号变量,2、syms函数,(二)默认符号变量在数学表达式中,一般习惯于使用排在字母表中前面的字母作为变量的系数,而用排在后面的字母表示变量。例如:f=ax2+bx+c表达式中的a,b,c通常被认为是常数,用作变量的系数;而将x看作自变量。,一、符号计算基础,例如,数学表达式 f=xn g=si
5、n(at+b)根据数学式中表示自变量的习惯,默认a,b,c为符号常数,x为符号变量。若在MATLAB中表示上述表达式,首先用syms 函数定义a,b,n,t,x为符号对象。在进行导数运算时,由于没有指定符号变量,则系统采用数学习惯来确定表达式中的自变量,默认a,b,c为符号常数,x,t为符号变量。即:对函数f求导为:df/dx 对函数g求导为:dg/dt,一、符号计算基础,(二)默认符号变量,为了了解函数引用过程中使用的符号变量个数及变量名,可以用findsym函数查询默认的变量。该函数的引用格式为:findsym(f,n)说明:f为用户定义的符号函数,n为正整数,表示查询变量的个数。n=i,
6、表示查询i个系统默认变量。n值省略时表示查询符号函数中全部系统默认变量。,一、符号计算基础,(二)默认符号变量,【例3】查询符号函数 f=xn g=sin(at+b)中的系统默认变量。syms a b n t x%定义符号变量f=xn;%给定符号函数g=sin(a*t+b);findsym(f,1)%在f函数中查询1个系统默认变量ans=x表示f函数中查询的1个系统默认变量为x。,一、符号计算基础,(二)默认符号变量,(三)符号表达式符号表达式由符号变量、函数、算术运算符等组成。符号表达式的书写格式与数值表达式相同。例如,数学表达式,一、符号计算基础,其符号表达式为:1+sqrt(5*x)/2
7、注意,在定义表达式前应先将表达式中的字符x定义为符号变量。,(四)生成符号函数将表达式中的自变量定义为符号变量后,赋值给符号函数名,即可生成符号函数。例如有一数学表达式:,一、符号计算基础,其用符号表达式生成符号函数fxy的过程为:syms a b c x y%定义符号运算量 fxy=(a*x2+b*y2)/c2%生成符号函数生成符号函数fxy后,即可用于微积分等符号计算。,一、符号计算基础,(四)生成符号函数,【例4】定义一个符号函数 fxy=(a*x2+b*y2)/c2,分别求该函数对x、y的导数和对x的积分。syms a b c x y%定义符号变量fxy=(a*x2+b*y2)/c2;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab06 符号 计算
链接地址:https://www.31ppt.com/p-6511682.html