欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    matlab符号运算基础.ppt

    • 资源ID:6512055       资源大小:294.50KB        全文页数:35页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    matlab符号运算基础.ppt

    三、符号运算基础,1,MATLAB 不仅具有数值运算功能,还开发了实现符号计算的工具包Symbolic Math Toolbox,符号运算的操作对象是非数值的符号对象,2,符号数学工具箱中的工具是建立在功能强大的Maple的基础上。它最初是由加拿大的滑铁卢(Waterloo)大学开发出来的。如果要求Matlab进行符号运算,那么首先由Maple计算并将结果返回到Matlab命令窗口。,符号运算的功能,符号线性代数 因式分解、展开和简化 符号代数方程求解 符号微积分 符号微分方程支持可变精度运算支持符号运算并能以指定的精度返回结果,符号运算与数值运算的区别,符号运算使用字符串进行符号分析,而不是基于矩阵的数值分析数值运算中必须先对变量赋值,然后才能参与运算符号运算无须事先对独立变量赋值,运算结果以标准的符号形式表达符号运算可以求解科学计算中数学问题的解析表达式精确解符号运算速度较慢,4,基本概念,符号变量:预先不要求有确定值的量符号表达式:代表数字、函数、算子和变量的Matlab字符串或字符串数组符号方程:含有等号的符号表达式符号矩阵:数组,其元素是符号表达式符号算术:使用已知的规则和给定符号恒等式求解这些符号方程的实践,它与代数和微积分中的求解方法完全一样,5,1.创建符号变量和符号表达式,MATLAB的符号工具箱提供了两个建立符号对象的函数:sym和syms函数sym的调用格式 符号变量名=sym(表达式)注:函数sym可创建一个符号变量,表达式可以是字符、字符串、数学表达式或字符表达式等,6,函数syms的调用格式syms 符号变量名1 符号变量名2 注:函数syms可一次创建多个符号变量用这种格式定义符号变量时不要在变量名上加字符串分界符(),变量间用空格而不要用逗号分隔,7,8,a=sym(MATLAB)a=MATLAB b=sym(3*x2+4*x+7)b=3*x2+4*x+7 syms c d e c=3xc=3x,9,数值矩阵A=1,2;3,4 A=a,b;c,d 不识别用matlab函数sym创建矩阵命令格式:A=sym()符号矩阵内容同数值矩阵需用sym指令定义需用单引号 标识注意与a,b;c,d的区别,2.符号矩阵的创建,10,A=sym(a,2*b;3*a,0)A=a,2*b 3*a,0,注:符号矩阵的每一行的两端都有方括号,这是与 Matlab数值矩阵的一个重要区别。,3.符号常量,当数值常量作为sym()的输入参量时,就建立了一个符号对象符号常量。虽然看上去是一个数值量,但已经是一个符号对象了。例:a=3/4;b=3/4;c=sym(3/4);d=sym(3/4);whos 查看变量类型a为实双精度浮点数值类型;b为实字符类型;c和d都是符号对象类型。,12,当符号表达式具有多个变量时,只有一个变量是独立变量,MATLAB将基于以下准则选择独立变量:小写字母i和j不能作为自由变量 小写字母x是首选符号变量其余小写字母被选中的次序是:在英文字母中,靠近x的优先,如果与x距离相同,则x之后的优先 大写字母比所有小写字母都靠后,4.符号变量的确定,13,findsym(s,n):按以下准则确定顺序给出符号表达式s中的靠近x的n个符号变量根据变量的首字母排序,排序规则为 x y w z v u.a X Y W Z V U.A随后的字母按字母顺序排列,且大写字母比小写字母优先:0 1.9 A B.Z a b.z,findsym(s):按字典顺序给出符号表达式s中的所有符号变量,14,syms a x y z t X1 x2 xa xb findsym(sin(pi*t)ans=t findsym(x+i*y-j*z)ans=x,y,z,findsym(a+y,1)ans=y findsym(X1+x2+xa+xb)ans=X1,x2,xa,xb findsym(X1+x2+xa+xb,4)ans=x2,xa,xb,X1,15,符号表达式的运算与普通数值运算不同,它的运算结果是符号表达式或符号矩阵Matlab6.5及以前的版本提供了很多函数用于符号计算,如symadd,symsub,symmul,symdiv,sympow等由于计算效率和计算精度不高,Matlab7.0及以后的版本已将其删除,相应的计算只需键入数学运算符+,-,*,/,或,4.符号表达式的基本运算,16,例 计算表达式 与 表达式 的和、差、积、商与乘方,syms x s1=x3-1;s2=x-1;s1+s2ans=x3+x-2 s1-s2ans=x3-x,s1*s2ans=(x3-1)*(x-1)s1/s2ans=(x3-1)/(x-1)s1s2ans=(x3-1)(x-1),17,复合函数compose(f,g):返回复合函数f(g(y),其中f=f(x),g=g(y).其中符号x为函数f中由命令findsym(f)确定的符号变量,符号y为函数g中由命令findsym(g)确定的符号变量compose(f,g,z):返回复合函数f(g(z)compose(f,g,x,z):返回复合函数f(g(z),将函数f中的自变量x用g(z)代替compose(f,g,x,y,z):返回复合函数f(g(z),将函数f中的自变量变量x用g(y)代替,然后用指定的变量z代替变量y,18,syms x y z t u;f=1/(1+x2);g=sin(y);h=xt;p=exp(-y/u);compose(f,g)ans=1/(sin(y)2+1)compose(f,g,t)ans=1/(sin(t)2+1),compose(h,g,x,z)ans=sin(z)t compose(h,g,t,z)ans=xsin(z)compose(h,p,x,y,z)ans=(1/exp(z/u)t compose(h,p,t,u,z)ans=x(1/exp(y/z),19,反函数finverse(f):返回函数f的反函数,其中f为单值的一元数学函数finverse(f,v):若符号函数f中有多个符号变量时,对指定的符号变量v计算其反函数,20,例 求y=x2的反函数,syms x;f=x2;g=finverse(f)Warning:finverse(x2)is not unique.In sym.finverse at 46g=x(1/2)compose(f,g)ans=x,21,例 求y=tex的反函数,f=sym(t*ex)f=t*ex g=finverse(f)g=log(x/t)/log(e)g=finverse(f,t)g=t/ex,22,合并同类项collect(S,v):合并多项式S中自变量v的同类项collect(S):以findsym确定的变量合并多项式S的同类项,23,syms x f=(x3+x+1)*(x2+1)f=(x2+1)*(x3+x+1)collect(f)ans=x5+2*x3+x2+x+1,例 合并多项式 的同类项,24,例 合并多项式 的同类项,s=sym(x2+x*exp(-t)+1)*(x+exp(-t);e1=collect(s)%合并关于x的同类项系数e1=x3+(2*x2)/exp(t)+(1/exp(2*t)+1)*x+1/exp(t)e2=collect(s,exp(-t)%合并关于exp(-t)的同类项系数e2=x*(x2+1)+x/exp(2*t)+(2*x2+1)/exp(t)e3=collect(s,t)%合并关于t的同类项系数e3=(x+1/exp(t)*(x2+x/exp(t)+1),25,因式分解factor(s):符号表达式s的因式分解horner(s):符号表达式s的嵌套形式,即用多层括号的形式表示,26,例 分解因式,syms x a;f=x3-a3f=x3-a3 factor(f)ans=-(a-x)*(a2+a*x+x2),27,例 将符号矩阵表达式的各个元素分解为多个因式,syms x b;f=x3+b3 x4-1;x5-1 x6-1f=b3+x3,x4-1 x5-1,x6-1 factor(f),28,例 将多项式表示为嵌套形式,syms x;f=x6-x4-5*x3+5*x2+5*x-6f=x6-x4-5*x3+5*x2+5*x-6 horner(f)ans=x*(x*(x*(x*(x2-1)-5)+5)+5)-6,29,例 将数字1025分解为正整数之积,factor(1025)ans=5 5 41 factor(1025)?Error using=factor at 21N must be a scalar.factor(sym(1025)ans=52*41,30,其它一些函数expand(s):符号表达式s的展开numden(s):返回符号表达式s经过分式通分后的分子和分母simplify(s):利用各种形式的代数恒等式对符号表达式s进行化简simple(s):通过对符号表达式s尝试多种不同的方法(包括simplify)进行化简,以寻求符号表达式S的最简形式double(s):将符号表达式s转换为双精度浮点数,31,subs(s):用工作空间中的变量替换符号表达式s中的所有变量subs(s,new):用变量new替换符号表达式s中的自由变量subs(s,old,new):用变量new替换符号表达式S中的变量old当变量new是数值形式时,显示的结果虽然是数值,但实际上是符号变量.要强制求值,需要用vpa或eval函数vpa(s,n):将s表示为n位有效位数的符号对象digits(d):设置当前的可变算术(vpa)精度的位数为整数d位.d=digits 返回当前的可变算术精度的位数给d,32,例 将以下矩阵各元素展开,syms x y;f=exp(x+y)log(x2*y2);2(x+2)+1 sin(x+y)f=exp(x+y),log(x2*y2)2(x+2)+1,sin(x+y)expand(f)ans=exp(x)*exp(y),log(x2*y2)4*2x+1,cos(x)*sin(y)+cos(y)*sin(x),33,例 求出下列表达式的分子和分母,syms x;f=6/x2f=6/x2 n d=numden(f)n=6d=x2,f=1/x3+6/x2+12/x+8f=12/x+6/x2+1/x3+8 n d=numden(f)n=8*x3+12*x2+6*x+1d=x3,34,例 化简,syms x;f=sin(x)2+cos(x)2f=cos(x)2+sin(x)2 syms x;f=sin(x)2+cos(x)2;simplify(f)ans=1 simple(f),35,例 求表达式 在 处的值,syms x;f=(3*x3+x2-1)/(x2+1)f=(3*x3+x2-1)/(x2+1)a=subs(f,x,1)a=3/2 class(a)ans=Sym vpa(a)ans=1.5,b=subs(f)b=(3*x3+x2-1)/(x2+1)x=1x=1 b=subs(f)b=1.5000 class(b)ans=double,

    注意事项

    本文(matlab符号运算基础.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开